aboutsummaryrefslogtreecommitdiff
path: root/sys/contrib/openzfs/module/icp
Commit message (Collapse)AuthorAgeFilesLines
* zfs: emit .note.GNU-stack section for all ELF targetsDimitry Andric2026-01-083-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | On FreeBSD, linking the zfs kernel module with binutils ld 2.44 shows the following warning: ld: warning: aesni-gcm-avx2-vaes.o: missing .note.GNU-stack section implies executable stack ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker Some of the `.S` files under `module/icp/asm-x86_64/modes` check whether to emit the `.note.GNU-stack` section using: #if defined(__linux__) && defined(__ELF__) We could add `&& defined(__FreeBSD__)` to the test, but since all other `.S` files in the OpenZFS tree use: #ifdef __ELF__ it would seem more logical to use that instead. Any recent ELF platform should support these note sections by now. Reviewed by: emaste, kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54578
* zfs: merge openzfs/zfs@e63d026b9Martin Matuska2025-11-171-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #17477 02fdd26e5 Add knob to disable slow io notifications #17792 d0294aa75 Update dnode_next_offset_level to accept blkid instead of offset #17824 8c225ff1b Fix gang write late_arrival bug #17861 -multiple Lift userspace definitions out of zfs_context.h #17872 dcada084b Pass flags to more DMU write/hold functions #17875 ec268cdf9 Fix caching of DDT log and BRT #17875 ea125eeb5 BRT: Round bv_entcount up to BRT_BLOCKSIZE #17877 6cfc3dba9 Cleanup ZIO_FLAG_IO_RETRY vs TRYHARD usage #17885 e63d026b9 cmd/zpool cstyle issues #17890 b4f073b5a Add BRT support to zpool prefetch command #17903 baefe098e ZIO: Set minimum number of free issue threads to 32 #17906 6e12f0bd7 spa_misc: add an API for spa_namespace_lock #17908 e26b9fc87 FreeBSD: Add support for _PC_CASE_INSENSITIVE #17911 -multiple Update library ABI versions for v2.4.0 #17915 8aaed7dc4 BRT: Fix ranges to blocks conversion math #17916 cc5cae547 BRT: Increase block size from 4KB to 8KB #17921 72b2a9571 ZAP: Remove dmu_object_info_from_dnode() call Obtained from: OpenZFS OpenZFS commit: e63d026b91b822dd9b363ab9a1e39d9a66493601
* zfs: merge openzfs/zfs@0455150f1Martin Matuska2025-10-251-17/+24
| | | | | | | | | | | | Notable upstream pull request merges: #17836 adacf020c Fix return value for setting zvol threading #17839 44704616b zpool: fix conflict with -v and -o options #17851 3a55e76b8 FreeBSD: zfs_getpages: Don't zero freshly allocated pages #17863 0455150f1 FreeBSD zio_crypt.c: initialize uio variables before access Obtained from: OpenZFS OpenZFS commit: 0455150f1160dd7089ab31fefcfc58bfa548ab81
* zfs: merge openzfs/zfs@7939bad5eMartin Matuska2025-09-102-0/+6
| | | | | | | | | | | | | | | | | Notable upstream pull request merges: #15869 ee7c36264 Add description of default sorting behavior to zfs_list.8 #17375 ced72fdd6 tunables: remove legacy FreeBSD aliases #17600 1da2c30be Update pam_zfs_key.c default path for FreeBSD #17632 b6bd3228b Synchronize the update of feature refcount #17645 59f8f5dfe zfs_vnops_os.c: Add support for the _PC_CLONE_BLKSIZE name #17665 0d54ae288 zdb: Fix format strings on 32-bit systems #17673 976f76534 Update compatibility.d files #17699 e3c3e86c0 Fix wrong dedup_table_size for legacy dedup #17704 e29bfa5bd Fix warnings about sha2_is_supported on FreeBSD/i386 #17706 a2424312c Fix the build on 32-bit FreeBSD with GCC Obtained from: OpenZFS OpenZFS commit: 7939bad5e79225288a2580e8ea217f5c6f616db2
* zfs: merge openzfs/zfs@a9410ccbdMartin Matuska2025-08-206-81/+1882
| | | | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #17058 -multiple Port AVX2 implementation of aes-gcm from BoringSSL #17602 077269bfe Fix Assert in dbuf_undirty, which triggers during usage zap shrink #17613 d15143207 ZIL: Make allocations more flexible #17618 5061f959d Retire zfs_autoimport_disable kmod option #17166 d3c1d27af zdb: better handling for corrupt block pointers #17616 1ccae433e Allow vmem_alloc backed multilists #17619 e0e60d319 Better pack struct zio_prop #17620 152e34822 Silence zstd large allocation warning #17622 -multiple ZIL: restore some things lost in "ZIL-crash" review #17625 -multiple zvol: cleanup & fixup zvol destruction sequence and locking #17631 885d929cf Fix missed assertion update in physical rewrite patch #17642 a9410ccbd Make zpool_find_config() report errors #17647 30a915efe zfs-send.8: mention combination of -c/-e flags and zstd_compress feature #17649 2c877e845 FreeBSD: Set st_rdev to NODEV, not 0, when not a device (already backported) Obtained from: OpenZFS OpenZFS commit: a9410ccbd9f0375a7eeb6bc35eb55efe9c21493e
* zfs: merge openzfs/zfs@1d0b94c4eMartin Matuska2025-08-122-6/+6
| | | | | | | | | | | | | Notable upstream pull request merges: #17398 -multiple ZIL: "crash" the ZIL if the pool suspends during fallback #17585 0c376d0f5 Document the new '-a' zpool option #17590 03592417c SIMD: Don't require definition of `HAVE_XSAVE` #17591 -multiple Prefer VERIFY0 over comparision with 0 or NULL #17596 -multiple zvol: misc cleanups #17605 2fd145b57 zvol: cleanup error handling and passthrough Obtained from: OpenZFS OpenZFS commit: 1d0b94c4e73d83299528c44fb4fa3b29eb6009a3
* zfs: merge openzfs/zfs@8170eb6ebMartin Matuska2025-06-213-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #17385 e1677d9ee ZVOL: Make zvol_prefetch_bytes module parameter platform-independent #17386 e0edfcbd4 ZVOL: Make zvol_volmode module parameter platform-independent #17391 108562344 Improve allocation fallback handling #17409 68817d28c Include class name into struct metaslab_class #17413 af7d60959 zpl: handle suspend from two remaining calls to `txg_wait_synced()` #17415 b7f919d22 Relax zfs_vnops_read_chunk_size limitations #17423 5e5253be8 FreeBSD: Wire projects support #17426 -multiple Channel programs: add zfs.sync.clone() #17431 e0ef4d276 Improve block cloning transactions accounting #17432 46b82de61 scrub: generate scrub_finish event #17435 bcd043023 Allow zero compression if dedup is enabled #17438 ba227e2cc Make TX abort after assign safer #17441 4ae931aa9 Polish db_rwlock scope #17434 66ec7fb26 Reduce zfs_dmu_offset_next_sync penalty #17445 238eab7dc FreeBSD: zfs_putpages: don't undirty pages until after write completes #17458 bd27b7540 ZIL: Relax parallel write ZIOs processing #17469 717213d43 Fix other nonrot bugs Obtained from: OpenZFS OpenZFS commit: 8170eb6ebcf2e7b1c735da80c331d7a57f1de987
* zfs: merge openzfs/zfs@3084336aeMartin Matuska2025-05-303-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #14876 b048bfa9c Allow opt-in of zvol blocks in special class #16486 b6916f995 ARC: parallel eviction #17169 1a8f5ad3b zvol: Enable zvol threading functionality on FreeBSD #17209 c17bdc491 More aggressively assert that db_mtx protects db.db_data #17218 734eba251 Wire O_DIRECT also to Uncached I/O #17246 49fbdd453 Introduce zfs rewrite subcommand #17255 b1ccab172 ARC: Avoid overflows in arc_evict_adj() #17280 848794503 zcp: get_prop: fix encryptionroot and encryption #17301 086105f4c Cause zpool scan resume commands to get logged in history #17306 246e5883b zfs_valstr: update zio_flag strings for ZIO_FLAG_PREALLOCATED #17309 78628a5c1 FreeBSD: Use new SYSCTL_SIZEOF() #17314 89a8a9158 ARC: Notify dbuf cache about target size reduction #17319 8b9c4e643 spa: clear checkpoint information during retry #17339 d5616ad34 Increase meta-dnode redundancy in "some" mode #17340 ea74cdedd Fix 2 bugs in non-raw send with encryption #17342 e55225be3 Add explicit DMU_DIRECTIO checks #17343 d8a33bc0a icp: Use explicit_memset() exclusively in gcm_clear_ctx() #17344 -multiple libzfs_core: add ZFS_IOC_TRACE envvar to enable ioctl tracing #17348 f0baaa329 arcstat: prevent ZeroDivisionError when L2ARC becomes empty #17353 83fa80a55 dmu_objset_hold_flags() should call dsl_dataset_rele_flags() on error #17355 -multiple Allow txg_wait_synced_flags() and dmu_tx_assign() to return when the pool suspends #17361 5c30b2438 Fix null dereference in spa_vdev_remove_cancel_sync() #17363 ddf28f27c Fix off-by-one bug in range tree code #17367 06fa8f3f6 zfs_cmd: reorganise zfs_cmd_t to match original size #17368 2a91d577b Expose dataset encryption status via fast stat path #17372 c464f1d01 Only interrupt active disk I/Os in failmode=continue #17373 9d76950d6 ZIL: Improve write log size accounting #17377 -multiple tunables: general code cleanup #17379 fa697b94e FreeBSD: Add posix_fadvise(POSIX_FADV_WILLNEED) support #17384 3dfa98d01 ZVOL: Make zvol_inhibit_dev module parameter platform-independent Obtained from: OpenZFS OpenZFS commit: 3084336ae4a4e114e41be3177a3f5c779d66e93c
* zfs: merge openzfs/zfs@4abc21b28Martin Matuska2025-03-2770-0/+70
| | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #17015 201d26294 Add receive:append permission for limited receive #17020 94a3fabcb Unified allocation throttling #17038 1b495eeab FDT dedup log sync -- remove incremental #17073 9250403ba Make ganging redundancy respect redundant_metadata property #17077 0433523ca Verify every block pointer is either embedded, hole, or has a valid DVA #17101 83fa051ce spl_vfs: fix vrele task runner signature mismatch #17113 09f4dd06c Prefer embedded blocks to dedup #17120 0ea44e576 Fix deduplication of overridden blocks #17124 62a9d372f zed: Print return code on failed zpool_prepare_disk #17126 3cd9934a4 Some arc_release() cleanup #17136 d033f2676 Always perform bounds-checking in metaslab_free_concrete #17142 45e9b54e9 kstat: allow multi-level module names #17145 676b7ef10 Fix deadlock on I/O errors during device removal #17180 4abc21b28 Block remap for cloned blocks on device removal Obtained from: OpenZFS OpenZFS commit: 4abc21b28c22d93c06e1e51c1f9019b4fa4e0d51
* zfs: merge openzfs/zfs@fe674998bMartin Matuska2025-03-091-1/+2
| | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #17042 ece35e0e6 zpool: allow relative vdev paths #17046 c43df8bbb vdev_file: unify FreeBSD and Linux implementations #17064 ee8803adc vdev_file: make FLUSH and TRIM asynchronous #17066 ecc44c45c include: move zio_priority_t into zfs.h #17071 ab3db6d15 arc: avoid possible deadlock in arc_read #17079 682c5f6a0 Fix wrong free function in arc_hdr_decrypt #17080 701093c44 Don't try to get mg of hole vdev in removal #17081 d7d274471 Better fill empty metaslabs #17088 a5fb5c55b spa: fix signature mismatch for spa_boot_init as eventhandler required #17089 7f05fface gcm_avx_init: zero the ghash state after hashing the IV #17122 fe674998b Check portable objset MAC even if local is zeroed Obtained from: OpenZFS OpenZFS commit: fe674998bb2d0912660d8aa3f2904b70f57497b0
* zfs: merge openzfs/zfs@1147a2797Martin Matuska2024-07-1818-3027/+74
| | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #16209 --multi-- icp: rip out everything we don't use #16230 20c8bdd85 FreeBSD: Update use of UMA-related symbols in arc_available_memory #16242 121a2d335 FreeBSD: unregister mountroot eventhandler on unload #16258 5de3ac223 vdev_open: clear async fault flag after reopen #16270 436731276 zvol: Fix suspend lock leaks #16273 c87cb22ba head_errlog: fix use-after-free #16284 f72e081fb FreeBSD: Use a statement expression to implement SET_ERROR() #16300 a10faf5ce FreeBSD: Use the new freeuio() helper to free dynamically allocated UIOs #16302 a7fc4c85e zstd: don't call zstd_mempool_reap if there are no buffers #16334 dc91e7452 zdb: dump ZAP_FLAG_UINT64_KEY ZAPs properly Obtained from: OpenZFS OpenZFS commit: 1147a279785329a2eaeb01c0610c35fe835a62a6
* zfs: merge openzfs/zfs@e2357561bMartin Matuska2024-05-311-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #15940 41ae864b6 Replace P2ALIGN with P2ALIGN_TYPED and delete P2ALIGN #16128 5137c132a zpool import output is not formated properly #16138 efbef9e6c FreeBSD: Add zfs_link_create() error handling #16146 04bae5ec9 Disable high priority ZIO threads on FreeBSD and Linux #16151 cc3869153 zfs_ioc_send: use a dedicated taskq thread for send #16151 adda768e3 spa: remove spa_taskq_dispatch_sync() #16151 515c4dd21 spa: flatten spa_taskq_dispatch_ent() #16151 0a543db37 spa_taskq_dispatch_ent: simplify arguments #16153 975a13259 Add support for parallel pool exports #16153 89acef992 Simplified the scope of the namespace lock #16159 136c05321 ZAP: Fix leaf references on zap_expand_leaf() errors #16162 af5dbed31 Fix scn_queue races on very old pools #16165 3400127a7 Fix ZIL clone records for legacy holes #16167 414acbd37 Unbreak FreeBSD cross-build on MacOS broken in 051460b8b #16172 eced2e2f1 libzfs: Fix mounting datasets under thread limit pressure #16178 b64afa41d Better control the thread pool size when mounting datasets #16181 fa99d9cd9 zfs_dbgmsg_print: make FreeBSD and Linux consistent #16191 e675852bc dbuf: separate refcount calls for dbuf and dbuf_user #16198 a043b60f1 Correct level handling in zstream recompress #16204 34906f8bb zap: reuse zap_leaf_t on dbuf reuse after shrink #16206 d0aa9dbcc Use memset to zero stack allocations containing unions #16207 8865dfbca Fix assertion in Persistent L2ARC #16208 08648cf0d Allow block cloning to be interrupted by a signal #16210 e2357561b FreeBSD: Add const qualifier to members of struct opensolaris_utsname #16214 800d59d57 Some improvements to metaslabs eviction #16216 02c5aa9b0 Destroy ARC buffer in case of fill error #16225 01c8efdd5 Simplify issig() Obtained from: OpenZFS OpenZFS commit: e2357561b9499296bff758afe4868dbc39735675
* zfs: unbreak aarch64 build with non-gcc compilersMartin Matuska2024-04-172-4/+4
| | | | Workaround until a permanent fix comes from vendor
* zfs: merge openzfs/zfs@90ba19eb7Martin Matuska2024-04-164-5/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #15784 90ba19eb7b Do no use .cfi_negate_ra_state within the assembly on Arm64 #15942 b6bbaa8372 Give a better message from 'zpool get' with invalid pool name #15943 ca678bc0bc Makefile.bsd: sort and cleanup source file list #15953 fa480fe5ba zinject: show more device fault fields #15983 30c4eba4ea Fix panics when truncating/deleting files #15992 99741bde59 zvol: use multiple taskq #16015 a100a195fa Add support for zfs mount -R <filesystem> #16022 5e5fd0a178 Speculative prefetch for reordered requests #16040 997f85b4d3 L2ARC: Relax locking during write #16042 b12738182c Improve dbuf_read() error reporting #16051 a9a4290173 xdr: header cleanup #16052 eeca9a91d6 Fix read errors race after block cloning #16057 aa5445c28b Remove db_state DB_NOFILL checks from syncing context #16061 76d1dde94c zinject: inject device errors into ioctls #16072 9e63631dea Small fix to prefetch ranges aggregation #16077 44f337be30 Illumos#16463 zfs_ioc_recv leaks nvlist #16085 4725e543be zinject: "no-op" error injection #16086 c6da985e28 Add the BTI elf note to the AArch64 SHA2 assembly Obtained from: OpenZFS OpenZFS commit: 90ba19eb7b81f0225e63bedfb902000d23383921
* Notable upstream pull request merges:Martin Matuska2023-12-084-26/+27
| | | | | | | | | | | | | | | | | | | | | | | | #15539 687e4d7f9 Extend import_progress kstat with a notes field #15544 c7b611926 Allow block cloning across encrypted datasets #15553 adcea23cb ZIO: Add overflow checks for linear buffers #15593 5f2700eee zpool: flush output before sleeping #15609 3e4bef52b Only provide execvpe(3) when needed #15610 735ba3a7b Use uint64_t instead of u_int64_t #15612 bcd83ccd2 ZIL: Remove TX_CLONE_RANGE replay for ZVOLs #15617 55b764e06 ZIL: Do not clone blocks from the future #15623 727497ccd module/icp/asm-arm/sha2: enable non-SIMD asm kernels on armv5/6 #15625 9743d0963 BRT: Limit brt_vdev_dump() to only one vdev #15629 f9765b182 zdb: Dump encrypted write and clone ZIL records #15634 2aa3a482a ZIL: Remove 128K into 2x68K LWB split optimization #15639 11656234b FreeBSD: Ensure that zfs_getattr() initializes the va_rdev field #15647 4836d293c zfs_refcount_remove: explictly ignore returns #15649 f0cb6482e setproctitle: fix ununitialised variable #15650 450f2d0b0 import: ignore return on hostid lookups Obtained from: OpenZFS OpenZFS commit: 450f2d0b08e73cfb057d0e301a813418b70d64b9
* zfs: merge openzfs/zfs@a03ebd9beMartin Matuska2023-11-292-4/+14
| | | | | | | | | | | | Notable upstream pull request merges: #15517 2a27fd411 ZIL: Assert record sizes in different places #15557 b94ce4e17 module/icp/asm-arm/sha2: fix compiling on armv5/6 #15557 4340f69be module/icp/asm-arm/sha2: auto detect __ARM_ARCH #15603 a03ebd9be ZIL: Call brt_pending_add() replaying TX_CLONE_RANGE #15606 1c38cdfe9 zdb: fix printf() length for uint64_t devid Obtained from: OpenZFS OpenZFS commit: a03ebd9beec6243682557fa692c12b1061fc58bd
* zfs: merge openzfs/zfs@f795e90a1Martin Matuska2023-10-042-0/+5
| | | | | | | | | | | Notable upstream pull request merges: #15322 4e16964e1 Add '-u' - nomount flag for zfs set #15331 fe4d055b3 Report ashift of L2ARC devices in zdb #15333 249d759ca Fix invalid pointer access in trace_dbuf.h #15339 f795e90a1 Add BTI landing pads to the AArch64 SHA2 assembly Obtained from: OpenZFS OpenZFS commit: f795e90a11c683d64bacc260fb7feab705b220b1
* stand: back out the most of the horrible aarch64 kludgeWarner Losh2023-05-011-5/+8
| | | | | | | | | Add one ifdef to upstrem code and get rid of compiling the horrible checked-in aarch64 assembler for the boot loader that the loader will never use. I'll attempt to upstream this and adjust as needed. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D39897
* Fix BLAKE3 aarch64 assembly for FreeBSD and macOSTino Reichardt2023-04-272-4511/+4057
| | | | | | | | | | | The x18 register isn't useable within FreeBSD kernel space, so we have to fix the BLAKE3 aarch64 assembly for not using it. The source files are here: https://github.com/mcmilk/BLAKE3-tests Reviewed-by: Kyle Evans <kevans@FreeBSD.org> Signed-off-by: Tino Reichardt <milky-zfs@mcmilk.de> Closes #14728
* zfs/powerpc64: Fix big-endian powerpc64 asmJustin Hibbits2023-04-224-0/+61
| | | | | | | | | | The powerpc asm from openzfs assumes that big-endian is always ELFv1 and ELFv2 is always little-endian, while FreeBSD uses ELFv2 everywhere. Add the necessary bits to the checksum asm to work on big-endian ELFv2. This was also submitted upstream as PR#14779. Tested by: dbaio
* zfs: merge openzfs/zfs@431083f75Martin Matuska2023-04-0331-6838/+28126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #12194 Fix short-lived txg caused by autotrim #13368 ZFS_IOC_COUNT_FILLED does unnecessary txg_wait_synced() #13392 Implementation of block cloning for ZFS #13741 SHA2 reworking and API for iterating over multiple implementations #14282 Sync thread should avoid holding the spa config write lock when possible #14283 txg_sync should handle write errors in ZIL #14359 More adaptive ARC eviction #14469 Fix NULL pointer dereference in zio_ready() #14479 zfs redact fails when dnodesize=auto #14496 improve error message of zfs redact #14500 Skip memory allocation when compressing holes #14501 FreeBSD: don't verify recycled vnode for zfs control directory #14502 partially revert PR 14304 (eee9362a7) #14509 Fix per-jail zfs.mount_snapshot setting #14514 Fix data race between zil_commit() and zil_suspend() #14516 System-wide speculative prefetch limit #14517 Use rw_tryupgrade() in dmu_bonus_hold_by_dnode() #14519 Do not hold spa_config in ZIL while blocked on IO #14523 Move dmu_buf_rele() after dsl_dataset_sync_done() #14524 Ignore too large stack in case of dsl_deadlist_merge #14526 Use .section .rodata instead of .rodata on FreeBSD #14528 ICP: AES-GCM: Refactor gcm_clear_ctx() #14529 ICP: AES-GCM: Unify gcm_init_ctx() and gmac_init_ctx() #14532 Handle unexpected errors in zil_lwb_commit() without ASSERT() #14544 icp: Prevent compilers from optimizing away memset() in gcm_clear_ctx() #14546 Revert zfeature_active() to static #14556 Remove bad kmem_free() oversight from previous zfsdev_state_list patch #14563 Optimize the is_l2cacheable functions #14565 FreeBSD: zfs_znode_alloc: lock the vnode earlier #14566 FreeBSD: fix false assert in cache_vop_rmdir when replaying ZIL #14567 spl: Add cmn_err_once() to log a message only on the first call #14568 Fix incremental receive silently failing for recursive sends #14569 Restore ASMABI and other Unify work #14576 Fix detection of IBM Power8 machines (ISA 2.07) #14577 Better handling for future crypto parameters #14600 zcommon: Refactor FPU state handling in fletcher4 #14603 Fix prefetching of indirect blocks while destroying #14633 Fixes in persistent error log #14639 FreeBSD: Remove extra arc_reduce_target_size() call #14641 Additional limits on hole reporting #14649 Drop lying to the compiler in the fletcher4 code #14652 panic loop when removing slog device #14653 Update vdev state for spare vdev #14655 Fix cloning into already dirty dbufs #14678 Revert "Do not hold spa_config in ZIL while blocked on IO" Obtained from: OpenZFS OpenZFS commit: 431083f75bdd3efaee992bdd672625ec7240d252
* zfs: merge openzfs/zfs@57cfae4a2 (master)Martin Matuska2023-02-165-5/+8
| | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #13816 Fix a race condition in dsl_dataset_sync() when activating features #14402 Prefetch on deadlists merge #14410 Improve resilver ETAs #14428 Resilver performance tuning #14439 Resolve WS-2021-0184 vulnerability in zstd #14440 EIO caused by encryption + recursive gang #14448 Fix console progress reporting for recursive send #14454 Improve arc_read() error reporting #14460 Restore FreeBSD to use .rodata #14474 Reduce need for contiguous memory for ioctls Obtained from: OpenZFS OpenZFS commit: 57cfae4a2f04aaff10c45b3f7975e0fe3ef3e8b8
* zfs: merge openzfs/zfs@9cd71c860 (master)Martin Matuska2023-01-2526-745/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #13805 Configure zed's diagnosis engine with vdev properties #14110 zfs list: Allow more fields in ZFS_ITER_SIMPLE mode #14121 Batch enqueue/dequeue for bqueue #14123 arc_read()/arc_access() refactoring and cleanup #14159 Bypass metaslab throttle for removal allocations #14243 Implement uncached prefetch #14251 Cache dbuf_hash() calculation #14253 Allow reciever to override encryption property in case of replication #14254 Restrict visibility of per-dataset kstats inside FreeBSD jails #14255 Zero end of embedded block buffer in dump_write_embedded() #14263 Cleanups identified by CodeQL and Coverity #14264 Miscellaneous fixes #14272 Change ZEVENT_POOL_GUID to ZEVENT_POOL to display pool names #14287 FreeBSD: Remove stray debug printf #14288 Colorize zfs diff output #14289 deadlock between spa_errlog_lock and dp_config_rwlock #14291 FreeBSD: Fix potential boot panic with bad label #14292 Add tunable to allow changing micro ZAP's max size #14293 Turn default_bs and default_ibs into ZFS_MODULE_PARAMs #14295 zed: add hotplug support for spare vdevs #14304 Activate filesystem features only in syncing context #14311 zpool: do guid-based comparison in is_vdev_cb() #14317 Pack zrlock_t by 8 bytes #14320 Update arc_summary and arcstat outputs #14328 FreeBSD: catch up to 1400077 #14376 Use setproctitle to report progress of zfs send #14340 Remove some dead ARC code #14358 Wait for txg sync if the last DRR_FREEOBJECTS might result in a hole #14360 libzpool: fix ddi_strtoull to update nptr #14364 Fix unprotected zfs_znode_dmu_fini #14379 zfs_receive_one: Check for the more likely error first #14380 Cleanup of dead code suggested by Clang Static Analyzer #14397 Avoid passing an uninitialized index to dsl_prop_known_index #14404 Fix reading uninitialized variable in receive_read #14407 free_blocks(): Fix reports from 2016 PVS Studio FreeBSD report #14418 Introduce minimal ZIL block commit delay #14422 x86 assembly: fix .size placement and replace .align with .balign Obtained from: OpenZFS OpenZFS commit: 9cd71c8604d52def22ffaddc35755712f0fb9349
* zfs: merge openzfs/zfs@59493b63c (master)Martin Matuska2022-12-076-9/+17
| | | | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #13782 Fix setting the large_block feature after receiving a snapshot #14157 FreeBSD: stop using buffer cache-only routines on sync #14172 zed: post a udev change event from spa_vdev_attach() #14181 zed: unclean disk attachment faults the vdev #14190 Bump checksum error counter before reporting to ZED #14196 Remove atomics from zh_refcount #14197 Don't leak packed recieved proprties #14198 Switch dnode stats to wmsums #14199 Remove few pointer dereferences in dbuf_read() #14200 Micro-optimize zrl_remove() #14204 Lua: Fix bad bitshift in lua_strx2number() #14212 Zstd fixes #14218 Avoid a null pointer dereference in zfs_mount() on FreeBSD #14235 nopwrites on dmu_sync-ed blocks can result in a panic #14236 zio can deadlock during device removal #14247 Micro-optimize fletcher4 calculations #14261 FreeBSD: zfs_register_callbacks() must implement error check correctly Obtained from: OpenZFS OpenZFS commit: 59493b63c18ea223857066218d6a58b67eb88159
* zfs: merge openzfs/zfs@2163cde45Martin Matuska2022-11-1616-73/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #13680 Add options to zfs redundant_metadata property #13758 Allow mounting snapshots in .zfs/snapshot as a regular user #13838 quota: disable quota check for ZVOL #13839 quota: extend quota for dataset #13973 Fix memory leaks in dmu_send()/dmu_send_obj() #13977 Avoid unnecessary metaslab_check_free calling #13978 PAM: Fix unchecked return value from zfs_key_config_load() #13979 Handle possible null pointers from malloc/strdup/strndup() #13997 zstream: allow decompress to fix metadata for uncompressed records #13998 zvol_wait logic may terminate prematurely #14001 FreeBSD: Fix a pair of bugs in zfs_fhtovp() #14003 Stop ganging due to past vdev write errors #14039 Optimize microzaps #14050 Fix draid2+2s metadata error on simultaneous 2 drive failures #14062 zed: Avoid core dump if wholedisk property does not exist #14077 Propagate extent_bytes change to autotrim thread #14079 FreeBSD: vn_flush_cached_data: observe vnode locking contract #14093 Fix ARC target collapse when zfs_arc_meta_limit_percent=100 #14106 Add ability to recompress send streams with new compression algorithm #14119 Deny receiving into encrypted datasets if the keys are not loaded #14120 Fix arc_p aggressive increase #14129 zed: Prevent special vdev to be replaced by hot spare #14133 Expose zfs_vdev_open_timeout_ms as a tunable #14135 FreeBSD: Fix out of bounds read in zfs_ioctl_ozfs_to_legacy() #14152 Adds the `-p` option to `zfs holds` #14161 Handle and detect #13709's unlock regression Obtained from: OpenZFS OpenZFS commit: 2163cde450d0898b5f7bac16afb4e238485411ff
* zfs: merge openzfs/zfs@d62bafee9Martin Matuska2022-10-042-4/+14
| | | | | | | | | | | | | | | Notable upstream pull request merges: #13857 Enforce "-F" flag on resuming recv of full/newfs on existing dataset #13928 Revert "Reduce dbuf_find() lock contention" #13928 Dynamically size dbuf hash mutex array #13930 zpool: Don't print "repairing" on force faulted drives #13938 Bring per_txg_dirty_frees_percent back to 30 #13939 Fix panic in dsl_process_sub_livelist for EINTR #13954 Fix bad free in skein code #13967 Fix potential NULL pointer dereference in dsl_dataset_promote_check() Obtained from: OpenZFS OpenZFS commit: d62bafee9fc38f8b9653c531e1861e83dcba4618
* zfs: merge openzfs/zfs@c629f0bf6Martin Matuska2022-09-219-184/+265
| | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #13725 Fix BLAKE3 tuneable and module loading on Linux and FreeBSD #13756 FreeBSD: Organize sysctls #13773 FreeBSD: add kqfilter support for zvol cdev #13781 Importing from cachefile can trip assertion #13794 Apply arc_shrink_shift to ARC above arc_c_min #13798 Improve too large physical ashift handling #13799 Revert "Avoid panic with recordsize > 128k, raw sending and no large_blocks" #13802 Add zfs.sync.snapshot_rename #13831 zfs_enter rework #13855 zfs recv hangs if max recordsize is less than received recordsize Obtained from: OpenZFS OpenZFS commit: c629f0bf62e351355716f9870d6c2e377584b016
* zfs: merge openzfs/zfs@b3d0568cfMartin Matuska2022-08-1354-54/+54
| | | | | | | | | | | | | | Notable upstream pull request merges: #9372 Implement a new type of zfs receive: corrective receive (-c) #13635 Add snapshots_changed as property #13636 Add support for per dataset zil stats and use wmsum counters #13643 Fix scrub resume from newly created hole #13670 Fix memory allocation for the checksum benchmark #13695 Skip checksum benchmarks on systems with slow cpu #13711 zpool: fix redundancy check after vdev removal Obtained from: OpenZFS OpenZFS commit: b3d0568cfd65458c92f7ab3d7bb709087992628e
* zfs: fixup build on powerpc64leAlfredo Dal'Ava Junior2022-07-081-6/+2
| | | | | | | This complements 0a7fa9d11b2007331857c9575bd9b77d86c88fe4 removing a #warning added intentionally, replacing it by a "TODO" comment. PR: 265003
* zfs: fix powerpc64le buildPiotr Kubaj2022-07-081-2/+8
| | | | | PR: 265003 Reviewed by: alfredo (on IRC)
* zfs: merge openzfs/zfs@cb01da680Martin Matuska2022-07-0714-33/+39
| | | | | | | | | | | | | | | | | Notable upstream pull request merges: #12438 Avoid panic with recordsize > 128k, raw sending and no large_blocks #13015 Fix dnode byteswapping #13256 Add a "zstream decompress" subcommand #13555 Scrub mirror children without BPs #13576 Several sorted scrub optimizations #13579 Fix and disable blocks statistics during scrub #13582 Several B-tree optimizations #13591 Avoid two 64-bit divisions per scanned block #13606 Avoid memory copies during mirror scrub #13613 Avoid memory copy when verifying raidz/draid parity Obtained from: OpenZFS OpenZFS commit: cb01da68057dcb9e612e8d2e97d058c46c3574af
* zfs: merge openzfs/zfs@deb121309Martin Matuska2022-06-2313-0/+21323
| | | | | | | | | | | | Notable upstream pull request merges: #12918 Introduce BLAKE3 checksums as an OpenZFS feature #13553 Reduce ZIO io_lock contention on sorted scrub #13537 Improve sorted scan memory accounting #13540 AVL: Remove obsolete branching optimizations #13563 FreeBSD: Improve crypto_dispatch() handling Obtained from: OpenZFS OpenZFS commit: deb1213098e2dc10e6eee5e5c57bb40584e096a6
* zfs: merge openzfs/zfs@c0cf6ed67Martin Matuska2022-05-184-100/+4
| | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #10662 zvol_wait: Ignore locked zvols #12789 Improve log spacemap load time #12812 Improved zpool status output, list all affected datasets #13277 FreeBSD: Use NDFREE_PNBUF if available #13302 Make zfs_max_recordsize default to 16M #13311 Fix error handling in FreeBSD's get/putpages VOPs #13345 FreeBSD: Fix translation from ABD to physical pages #13373 zfs: holds: dequadratify #13375 Corrected edge case in uncompressed ARC->L2ARC handling #13388 Improve mg_aliquot math #13405 Reduce dbuf_find() lock contention #13406 FreeBSD: use zero_region instead of allocating a dedicated page Obtained from: OpenZFS OpenZFS commit: c0cf6ed6792e545fd614c2a88cb53756db7e03f8
* zfs: merge openzfs/zfs@bc3f12bfa (master) into mainMartin Matuska2022-03-2918-292/+287
| | | | | | | | | | | | | | Notable upstream pull request merges: #12083 libzfs: FreeBSD doesn't resize partitions for you #13106 add physical device size to SIZE column in 'zpool list -v' #13158 Allow zfs send to exclude datasets #13190 module: zfs: zio_inject: zio_match_handler: don't << -1 #13219 FreeBSD: add missing replay check to an assert in zfs_xvattr_set #13220 module: freebsd: avoid a taking a destroyed lock in zfs_zevent bits #13221 Fix ACL checks for NFS kernel server Obtained from: OpenZFS OpenZFS commit: bc3f12bfac152a0c28951cec92340ba14f9ccee9
* zfs: merge openzfs/zfs@a86e08941 (master) into mainMartin Matuska2022-03-0830-11075/+560
| | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #9078: log xattr=sa create/remove/update to ZIL #11919: Cross-platform xattr user namespace compatibility #13014: Report dnodes with faulty bonuslen #13016: FreeBSD: Fix zvol_cdev_open locking #13019: spl: Don't check FreeBSD rwlocks for double initialization #13027: Fix clearing set-uid and set-gid bits on a file when replying a write #13031: Add enumerated vdev names to 'zpool iostat -v' and 'zpool list -v' #13074: Enable encrypted raw sending to pools with greater ashift #13076: Receive checks should allow unencrypted child datasets #13098: Avoid dirtying the final TXGs when exporting a pool #13172: Fix ENOSPC when unlinking multiple files from full pool Obtained from: OpenZFS OpenZFS commit: a86e089415679cf1b98eb424a159bb36aa2c19e3
* zfs: merge openzfs/zfs@17b2ae0b2 (master) into mainMartin Matuska2022-01-2243-6290/+189
| | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #12766 Fix error propagation from lzc_send_redacted #12805 Updated the lz4 decompressor #12851 FreeBSD: Provide correct file generation number #12857 Verify dRAID empty sectors #12874 FreeBSD: Update argument types for VOP_READDIR #12896 Reduce number of arc_prune threads #12934 FreeBSD: Fix zvol_*_open() locking #12947 lz4: Cherrypick fix for CVE-2021-3520 #12961 FreeBSD: Fix leaked strings in libspl mnttab #12964 Fix handling of errors from dmu_write_uio_dbuf() on FreeBSD #12981 Introduce a flag to skip comparing the local mac when raw sending #12985 Avoid memory allocations in the ARC eviction thread Obtained from: OpenZFS OpenZFS commit: 17b2ae0b24d487fdda2ef1098ec26fa7f79a61f6
* zfs: merge openzfs/zfs@4a1195ca5 (master) into mainMartin Matuska2021-09-152-2/+2
| | | | | | | | | | | | | | | Notable upstream pull request merges: #11312 Temporarily use root credentials to mount snapshots in .zfs #12246 arc: Drop an incorrect assert #12443 Fixed data integrity issue when underlying disk returns error to zfs #12522 Compressed receive with different ashift can result in incorrect PSIZE on disk #12535 Verify embedded blkptr's in arc_read() #12541 Allow sending corrupt snapshots even if metadata is corrupted Obtained from: OpenZFS OpenZFS commit: 4a1195ca5041cbff2a6b025a31937fef84876c52
* zfs: merge openzfs/zfs@f3678d70f (master) into mainMartin Matuska2021-08-084-11/+2
| | | | | | | | | | | | | Notable upstream pull request merges: #12339 Read past end of argv array in zpool_do_import() #12365 Fixes in persistent L2ARC #12383 Fixes for KMSAN reports #12425 Avoid small buffer copying on write #12428 Fix unfortunate NULL in spa_update_dspace #12446 Allow disabling of unmapped I/O on FreeBSD Obtained from: OpenZFS OpenZFS commit: f3678d70ff8f98d67caf377ec0326c9a6c7bcf29
* zfs: merge openzfs/zfs@75b4cbf62 (master) into mainMartin Matuska2021-06-086-8/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Notable upstream pull request merges: #11710 Allow zfs to send replication streams with missing snapshots #11751 Avoid taking global lock to destroy zfsdev state #11786 Ratelimit deadman zevents as with delay zevents #11803 ZFS traverse_visitbp optimization to limit prefetch #11813 Allow pool names that look like Solaris disk names #11822 Atomically check and set dropped zevent count #11822 Don't scale zfs_zevent_len_max by CPU count #11833 Refactor zfsdev state init/destroy to share common code #11837 zfs get -p only outputs 3 columns if "clones" property is empty #11843 libzutil: zfs_isnumber(): return false if input empty #11849 Use dsl_scan_setup_check() to setup a scrub #11861 Improvements to the 'compatibility' property #11862 cmd/zfs receive: allow dry-run (-n) to check property args #11864 receive: don't fail inheriting (-x) properties on wrong dataset type #11877 Combine zio caches if possible #11881 FreeBSD: use vnlru_free_vfsops if available #11883 FreeBSD: add support for lockless symlink lookup #11884 FreeBSD: add missing seqc write begin/end around zfs_acl_chown_setattr #11896 Fix crash in zio_done error reporting #11905 zfs-send(8): Restore sorting of flags #11926 FreeBSD: damage control racing .. lookups in face of mkdir/rmdir #11930 vdev_mirror: don't scrub/resilver devices that can't be read #11938 Fix AVX512BW Fletcher code on AVX512-but-not-BW machines #11955 zfs get: don't lookup mount options when using "-s local" #11956 libzfs: add keylocation=https://, backed by fetch(3) or libcurl #11959 vdev_id: variable not getting expanded under map_slot() #11966 Scale worker threads and taskqs with number of CPUs #11994 Clean up use of zfs_log_create in zfs_dir #11997 FreeBSD: Don't force xattr mount option #11997 FreeBSD: Implement xattr=sa #11997 FreeBSD: Use SET_ERROR to trace xattr name errors #11998 Simplify/fix dnode_move() for dn_zfetch #12003 FreeBSD: Initialize/destroy zp->z_lock #12010 Fix dRAID self-healing short columns #12033 Revert "Fix raw sends on encrypted datasets when copying back snapshots" #12040 Reinstate the old zpool read label logic as a fallback #12046 Improve scrub maxinflight_bytes math #12049 FreeBSD: avoid memory allocation in arc_prune_async #12052 FreeBSD: incorporate changes to the VFS_QUOTACTL(9) KPI #12061 Fix dRAID sequential resilver silent damage handling #12072 Let zfs diff be more permissive #12077 FreeBSD: Retry OCF ENOMEM errors. #12088 Propagate vdev state due to invalid label corruption #12091 libzfs: On FreeBSD, use MNT_NOWAIT with getfsstat #12097 FreeBSD: Update dataset_kstats for zvols in dev mode #12104 FreeBSD boot code reminder after zpool upgrade #12114 Introduce write-mostly sums Obtained from: OpenZFS OpenZFS commit: 75b4cbf62590c23fac3667537961a2a75fdc2cc3
* zfs: merge OpenZFS master-436ab35a5Martin Matuska2021-02-165-90/+90
| | | | | | | | | | | - speed up writing to ZFS pools without ZIL devices (aa755b3) - speed up importing ZFS pools (2d8f72d, a0e0199, cf0977a) ... MFC after: 2 weeks Reviewed by: mjg (partial) Tested by: pho Differential Revision: https://reviews.freebsd.org/D28677
* OpenZFS merge main-gf11b09Matt Macy2021-01-086-16/+100
| | | | | | | | - add dRAID support - fix duplicate close handling - fix memory leak in prefetch - fix problem with SIMD benchmarking on FreeBSD boot ...
* Initial import from vendor-sys branch of openzfsMatt Macy2020-08-2489-0/+44588
Notes: svn path=/head/; revision=364740