Skip to content

Releases: openzfs/zfs

zfs-2.3.5

18 Nov 20:21
zfs-2.3.5

Choose a tag to compare

Supported Platforms

  • Linux: compatible with 4.18 - 6.17 kernels
  • FreeBSD: compatible with releases starting from 13.3+, 14.0+

Changes

  • FreeBSD: Satisfy ASSERT_VOP_IN_SEQC() #17722
  • CI: Update FreeBSD versions and ci-type handling #17896
  • BRT: Fix ranges to blocks conversion math #17886 #17915
  • zstd: disable intrinsics #17904 #17852
  • Linux 6.17 compat: Fix broken projectquota on 6.17 #17884 #17869
  • Synchronize the update of feature refcount #17184 #17632
  • zdb: Fix asize overflow in verify_livelist_allocs() #17764
  • Fix two infinite loops if dmu_prefetch_max set to zero #17692 #17729
  • dnode_next_offset: backtrack if lower level does not match #16025 #11196
  • zvol: verify IO type is supported #17803
  • zvol: Fix blk-mq sync #17761 #17765
  • Linux 6.17 compat: META #17789
  • Add interface to interface spa_get_worst_case_min_alloc() function #17758
  • contrib/initramfs/scripts/zfs: shellcheck fixup #17626
  • Fix 'zpool add' safety check corner cases #17780
  • Linux 6.17: d_set_d_op() is no longer available #17621
  • CI: Fix FreeBSD 15.0 by staying on ALPHA4 due to broken ALPHA5 image #17846
  • CI: Switch FreeBSD 15 to 15.0-ALPHA4 and add FreeBSD 16 #17815
  • docs: fix a few small typos (#17804)
  • CI: Add ZTS -O option, log Setup Testing Machines step #17753
  • CI: Switch FreeBSD 15 to 15.0-ALPHA3 #17795
  • CI: Remove Buildbot references #17794
  • CI: update perf and bpftools with the kernel packages #17791
  • CI: Switch FreeBSD 15 to 15.0-ALPHA2 #17749
  • CI: Increase setup timeout to 20min, add timestamps #17714
  • ci: fix syntax issues in zfs-qemu.yml #17695
  • ci: use real head sha instead of GITHUB_SHA when generating CI type #17695
  • CI: Increase 'Setup QEMU' timeout to 15 minutes #17697

zfs-2.2.9

18 Nov 20:21
zfs-2.2.9

Choose a tag to compare

Supported Platforms

  • Linux: compatible with 4.18 - 6.17 kernels
  • FreeBSD: compatible with releases starting from 13.3+, 14.0+

Changes

  • BRT: Fix ranges to blocks conversion math #17886 #17915
  • CI: Update FreeBSD versions and ci-type handling #17896
  • zstd: disable intrinsics #17904 #17852
  • freebsd: unbreak module/Makefile.bsd build on 15-CURRENT-arm64 #17219
  • Linux 6.17 compat: Fix broken projectquota on 6.17 #17884 #17869
  • Faster checksum benchmark on system boot #17563 #17560
  • Validate mountpoint on path-based unmount using statx #17481
  • pyzfs: Update ax_python_devel.m4 to serial 37 #17480
  • Reduce zfs_dmu_offset_next_sync penalty #17434
  • build: use correct bashcompletiondir on arch #16861
  • Add building support for Artix Linux (#16265)
  • config/zfs-build.m4: sort vendors #16164
  • enforce arc_dnode_limit #17487 #17542
  • Soften pruning threshold on not evictable metadata #16401
  • Several improvements to ARC shrinking (#16197)
  • Debian rules: install scripts/objtool-wrapper.in into dkms tree #17633 #17646
  • objtool-wrapper: Update Debian packaging #17633 #17646
  • objtool wrapper: use absolute path to call the wrapper #17541
  • dnode_next_offset: backtrack if lower level does not match #16025 #11196
  • contrib/initramfs/scripts/zfs: shellcheck fixup #17626
  • [zfs-2.2.9] Fix zpl_ctldir.c checkstyle
  • zvol: verify IO type is supported #17803
  • zvol: Fix blk-mq sync #17761 #17765
  • ZTS: make uses of mktemp consistent
  • Linux 6.17 compat: META #17789
  • Add interface to interface spa_get_worst_case_min_alloc() function #17758
  • Fix 'zpool add' safety check corner cases #17780
  • Linux 6.17: d_set_d_op() is no longer available #17621
  • Linux 6.16 compat: META #17578
  • linux/zvol_os: fix crash with blk-mq on Linux 4.19 #17597
  • Skip dbuf_evict_one() from dbuf_evict_notify() for reclaim thread #17561
  • Linux 6.16: remove writepage and readahead_page #17443
  • Linux build: handle CONFIG_OBJTOOL_WERROR=y #17456
  • CI: Fix FreeBSD 15.0 by staying on ALPHA4 due to broken ALPHA5 image #17846
  • CI: Switch FreeBSD 15 to 15.0-ALPHA4 and add FreeBSD 16 #17815
  • docs: fix a few small typos (#17804)
  • CI: Add ZTS -O option, log Setup Testing Machines step #17753
  • CI: Switch FreeBSD 15 to 15.0-ALPHA3 #17795
  • CI: Remove Buildbot references #17794
  • CI: update perf and bpftools with the kernel packages #17791
  • CI: Switch FreeBSD 15 to 15.0-ALPHA2 #17749
  • CI: Increase setup timeout to 20min, add timestamps #17714
  • ci: fix syntax issues in zfs-qemu.yml #17695
  • ci: use real head sha instead of GITHUB_SHA when generating CI type #17695
  • CI: Increase 'Setup QEMU' timeout to 15 minutes #17697
  • CI: Add Debian 13 to the FULL_OS runner list #17648
  • CI: Add optional patch level, fix hostname on F42 #17638
  • FreeBSD 15.0 is now "PRERELEASE" #17617
  • CI: match and trim out internal timestamp for test prefix #17045
  • Add CodeQL mismatched dsl_dataset_hold/_rele pairs check #17352
  • CI: Remove Debian backports #17569
  • CI: Add CentOS Stream 9/10 to the FULL_OS runner list #16904 #17526
  • ZTS: Fix FreeBSD 15.0 ksh errors #17523
  • CI: Switch from FreeBSD 13.4 to 13.5 #17519
  • CI: run ztest on compressed zpool #17501
  • ZTS: Use FreeBSD cloudinit images #17462

zfs-2.4.0-rc4

18 Nov 01:12
zfs-2.4.0-rc4

Choose a tag to compare

zfs-2.4.0-rc4 Pre-release
Pre-release

We are excited to announce the fourth release candidate (RC4) of OpenZFS 2.4.0!

Supported Platforms

  • Linux: compatible with 4.18 - 6.17 kernels
  • FreeBSD: compatible with releases starting from 13.3+, 14.0+

Key Features in OpenZFS 2.4.0:

  • Quotas: Allow setting default user/group/project quotas (#17130)
  • Uncached IO: Direct IO fallback to a light-weight uncached IO when unaligned (#17218)
  • Unified allocation throttling: A new algorithm designed to reduce vdev fragmentation (#17020)
  • Better encryption performance using AVX2 for AES-GCM (#17058)
  • Allow ZIL on special vdevs when available (#17505)
  • Extend special_small_blocks to land ZVOL writes on special vdevs (#14876), and allow non-power of two values (#17497)
  • Add zfs rewrite -P which preserves logical birth time when possible to minimize incremental stream size (#17565)
  • Add -a|--all option which scrubs, trims, or initializes all imported pools (#17524)
  • Add zpool scrub -S -E to scrub specific time ranges (#16853)
  • Release topology restrictions on special/dedup vdevs (#17496)
  • Multiple gang blocks improvements and fixes (#17111, #17004, #17587, #17484, #17123, #17073)
  • New dedup optimizations and fixes (#17038, #17123, #17435, #17391)

How to Participate:

We encourage users and developers to test this release candidate and provide feedback. Your input is invaluable in ensuring the final release meets our community's needs. Please report any issues you encounter in our GitHub repository.

zfs-2.4.0-rc4 changelog: git cherry -v remotes/origin/zfs-2.3-release zfs-2.4.0-rc4 | sed '/^-/d; s/+ //g'

zfs-2.4.0-rc3

22 Oct 22:11
zfs-2.4.0-rc3

Choose a tag to compare

zfs-2.4.0-rc3 Pre-release
Pre-release

We are excited to announce the second release candidate (RC3) of OpenZFS 2.4.0!

Supported Platforms

  • Linux: compatible with 4.18 - 6.17 kernels
  • FreeBSD: compatible with releases starting from 13.3+, 14.0+

Key Features in OpenZFS 2.4.0:

  • Quotas: Allow setting default user/group/project quotas (#17130)
  • Uncached IO: Direct IO fallback to a light-weight uncached IO when unaligned (#17218)
  • Unified allocation throttling: A new algorithm designed to reduce vdev fragmentation (#17020)
  • Better encryption performance using AVX2 for AES-GCM (#17058)
  • Allow ZIL on special vdevs when available (#17505)
  • Extend special_small_blocks to land ZVOL writes on special vdevs (#14876), and allow non-power of two values (#17497)
  • Add zfs rewrite -P which preserves logical birth time when possible to minimize incremental stream size (#17565)
  • Add -a|--all option which scrubs, trims, or initializes all imported pools (#17524)
  • Add zpool scrub -S -E to scrub specific time ranges (#16853)
  • Release topology restrictions on special/dedup vdevs (#17496)
  • Multiple gang blocks improvements and fixes (#17111, #17004, #17587, #17484, #17123, #17073)
  • New dedup optimizations and fixes (#17038, #17123, #17435, #17391)

How to Participate:

We encourage users and developers to test this release candidate and provide feedback. Your input is invaluable in ensuring the final release meets our community's needs. Please report any issues you encounter in our GitHub repository.

zfs-2.4.0-rc3 changelog: git cherry -v remotes/origin/zfs-2.3-release zfs-2.4.0-rc3 | sed '/^-/d; s/+ //g'

zfs-2.4.0-rc2

30 Sep 23:45
zfs-2.4.0-rc2

Choose a tag to compare

zfs-2.4.0-rc2 Pre-release
Pre-release

We are excited to announce the second release candidate (RC2) of OpenZFS 2.4.0!

Supported Platforms

  • Linux: compatible with 4.18 - 6.17 kernels
  • FreeBSD: compatible with releases starting from 13.3+, 14.0+

Key Features in OpenZFS 2.4.0:

  • Quotas: Allow setting default user/group/project quotas (#17130)
  • Uncached IO: Direct IO fallback to a light-weight uncached IO when unaligned (#17218)
  • Unified allocation throttling: A new algorithm designed to reduce vdev fragmentation (#17020)
  • Better encryption performance using AVX2 for AES-GCM (#17058)
  • Allow ZIL on special vdevs when available (#17505)
  • Extend special_small_blocks to land ZVOL writes on special vdevs (#14876), and allow non-power of two values (#17497)
  • Add zfs rewrite -P which preserves logical birth time when possible to minimize incremental stream size (#17565)
  • Add -a|--all option which scrubs, trims, or initializes all imported pools (#17524)
  • Add zpool scrub -S -E to scrub specific time ranges (#16853)
  • Release topology restrictions on special/dedup vdevs (#17496)
  • Multiple gang blocks improvements and fixes (#17111, #17004, #17587, #17484, #17123, #17073)
  • New dedup optimizations and fixes (#17038, #17123, #17435, #17391)

How to Participate:

We encourage users and developers to test this release candidate and provide feedback. Your input is invaluable in ensuring the final release meets our community's needs. Please report any issues you encounter in our GitHub repository.

zfs-2.4.0-rc2 changelog: git cherry -v remotes/origin/zfs-2.3-release zfs-2.4.0-rc2 | sed '/^-/d; s/+ //g'

zfs-2.3.4

25 Aug 22:34
zfs-2.3.4

Choose a tag to compare

Supported Platforms

  • Linux: compatible with 4.18 - 6.16 kernels
  • FreeBSD: compatible with releases starting from 13.3+, 14.0+

Changes

  • CI: Add Debian 13 to the FULL_OS runner list #17648
  • Debian rules: install scripts/objtool-wrapper.in into dkms tree #17633 #17646
  • objtool-wrapper: Update Debian packaging #17633 #17646
  • add uncompressed_size to arc_summary #17556
  • FreeBSD: Add support for _PC_HAS_HIDDENSYSTEM #17518
  • Add templated [email protected] #17483
  • FreeBSD: Ensure that z_pflags is initialized for new znodes #17486
  • CI: Add optional patch level, fix hostname on F42 #17638
  • Add CodeQL mismatched dsl_dataset_hold/_rele pairs check #17352
  • Add conflict/replacement with older SONAME libzfs and libzpool packages #17586
  • FreeBSD: zfs_putpages: don't undirty pages until after write completes #17533
  • Revert "FreeBSD: zfs_putpages: don't undirty pages until after write completes" #17533
  • Allow vmem_alloc backed multilists #17616
  • Silence zstd large allocation warning #17620 #11557
  • FreeBSD 15.0 is now "PRERELEASE" #17617
  • Linux 6.16 compat: META #17578
  • zed: prettify slack notification message #17610
  • linux/zvol_os: fix crash with blk-mq on Linux 4.19 #17597
  • rpm: don't list /sbin/zgenhostid twice in %files #17601
  • config: Avoid void main() in toolchain-simd.m4 #13303 #17590
  • SIMD: Don't require definition of HAVE_XSAVE #13303 #17590
  • Linux: zfs_putpage: document (and fix!) confusing sync/commit modes #17584
  • Linux: zfs_putpage: complete async page writeback immediately #17584 #14290
  • Linux: sync: remove async/sync accounting #17584
  • ZTS: mmap_ftruncate test to confirm async writeback behaviour #17584
  • CI: match and trim out internal timestamp for test prefix #17045
  • ZTS: include microsecond timestamps on all output #17045
  • CI: Remove Debian backports #17569
  • linux: Fix out-of-src builds #17517
  • Fix zdb pool/ with -k #17536
  • CI: Add CentOS Stream 9/10 to the FULL_OS runner list #16904 #17526
  • Delete unused .cirrus.yml #17155 #17535
  • ZTS: Fix FreeBSD 15.0 ksh errors #17523
  • CI: Switch from FreeBSD 13.4 to 13.5 #17519
  • Revert "Fix incorrect expected error in ztest" #17503
  • ztest: Fix false positive of ENOSPC handling #17506
  • CI: run ztest on compressed zpool #17501
  • pyzfs: Adapt python lib directory evaluation from ax_python_devel.m4 #16155 #17480
  • pyzfs: Update ax_python_devel.m4 to serial 37 #17480
  • Missing tests in make pkg #17491
  • spa: ZIO_TASKQ_ISSUE: Use symbolic priority #17489
  • Fix TestGroup warning due to missing tags #17473
  • ZTS: Use FreeBSD cloudinit images #17462
  • objtool wrapper: use absolute path to call the wrapper #17541
  • Linux build: handle CONFIG_OBJTOOL_WERROR=y #17456
  • Make TX abort after assign safer #17438
  • Introduce zfs rewrite subcommand (#17246)
  • Linux 6.16: remove writepage and readahead_page #17443
  • Skip dbuf_evict_one() from dbuf_evict_notify() for reclaim thread #17561
  • enforce arc_dnode_limit #17487 #17542
  • Increase meta-dnode redundancy in "some" mode #17339
  • Ensure that gang_copies is always at least as large as copies #17484
  • zts: add spdx license tags to gang_blocks tests (#17160)
  • Make ganging redundancy respect redundant_metadata property (#17073)
  • SPDX: Add missing CDDL-1.0 license
  • range_tree: Provide more debug details upon unexpected add/remove #17581
  • Faster checksum benchmark on system boot #17563 #17560
  • Don't use wrong weight when passivating group #17566
  • Default to zfs_bclone_wait_dirty=1 #17455
  • zdb: fix checksum calculation for decompressed blocks #17547
  • ZED: Fix device type detection and pool iteration logic #17545
  • Define sops->free_inode() to prevent use-after-free during lookup #17546
  • ZIL: Force writing of open LWB on suspend #17521
  • Correct weight recalculation of space-based metaslabs #17531
  • Validate mountpoint on path-based unmount using statx #17481
  • Fix other nonrot bugs #17469
  • Polish db_rwlock scope #17441
  • scrub: generate scrub_finish event #17432
  • Some arc_release() cleanup #17126
  • FDT dedup log sync -- remove incremental #17038
  • ZIL: Relax parallel write ZIOs processing #17458

zfs-2.4.0-rc1

22 Aug 20:13
zfs-2.4.0-rc1

Choose a tag to compare

zfs-2.4.0-rc1 Pre-release
Pre-release

We are excited to announce the first release candidate (RC1) of OpenZFS 2.4.0!

Supported Platforms

  • Linux: compatible with 4.18 - 6.16 kernels
  • FreeBSD: compatible with releases starting from 13.3+, 14.0+

Key Features in OpenZFS 2.4.0:

  • Quotas: Allow setting default user/group/project quotas (#17130)
  • Uncached IO: Direct IO fallback to a light-weight uncached IO when unaligned (#17218)
  • Unified allocation throttling: A new algorithm designed to reduce vdev fragmentation (#17020)
  • Better encryption performance using AVX2 for AES-GCM (#17058)
  • Allow ZIL on special vdevs when available (#17505)
  • Extend special_small_blocks to land ZVOL writes on special vdevs (#14876), and allow non-power of two values (#17497)
  • Add zfs rewrite -P which preserves logical birth time when possible to minimize incremental stream size (#17565)
  • Add -a|--all option which scrubs, trims, or initializes all imported pools (#17524)
  • Add zpool scrub -S -E to scrub specific time ranges (#16853)
  • Release topology restrictions on special/dedup vdevs (#17496)
  • Multiple gang blocks improvements and fixes (#17111, #17004, #17587, #17484, #17123, #17073)
  • New dedup optimizations and fixes (#17038 , #17123 , #17435, #17391)

How to Participate:

We encourage users and developers to test this release candidate and provide feedback. Your input is invaluable in ensuring the final release meets our community's needs. Please report any issues you encounter in our GitHub repository.

zfs-2.4.0-rc1 changelog: git cherry -v zfs-2.3-release master | sed '/^-/d; s/+ //g'

zfs-2.3.3

19 Jun 17:59
zfs-2.3.3

Choose a tag to compare

Supported Platforms

  • Linux: compatible with 4.18 - 6.15 kernels
  • FreeBSD: compatible with releases starting from 13.3+, 14.0+

Changes

  • Tag zfs-2.3.3
  • Linux 6.15 compat: META #17393
  • Fix mixed-use-of-spaces-and-tabs rpmlint warning #17461
  • ioctl: remove FICLONE/FICLONERANGE/FIDEDUPERANGE compat #17308
  • Relax zfs_vnops_read_chunk_size limitations #17415
  • dmu_traverse: remove 'ignore_hole_birth' tunable alias #17376
  • ARC: parallel eviction #16486
  • During pool export flush the ARC asynchronously #16215
  • CI: Automate some GitHub PR status labels manipulations #16721
  • FreeBSD: zfs_putpages: don't undirty pages until after write completes #17445
  • zfs_log_write: only put the callback on the last itx #17445
  • zpl_sync_fs: work around kernels that ignore sync_fs errors #17420
  • zfs_sync: return error when pool suspends #17420
  • zfs_sync: remove support for impossible scenarios #17420
  • zts: test syncfs() behaviour when pool suspends #17420
  • Improve block cloning transactions accounting #17431
  • Reduce zfs_dmu_offset_next_sync penalty #17434
  • Make TX abort after assign safer #17438
  • Allow zero compression if dedup is enabled #17435
  • ZTS: Enable io_uring on CentOS Stream 9 and 10 also #17447
  • Linux build: silence objtool warnings #17410
  • CI: Retire Fedora 40 builder #17408
  • ZTS: Enable io_uring support on el9/el10 #17397
  • ZTS: Add AlmaLinux 10 #17397
  • abd_os: move headers from libzpool to libspl #16940 #17390 #17394
  • Set spa_final_txg in spa_unload() #17395
  • zpool: clarify ZPOOL_STATUS_REMOVED_DEV status message #17400
  • vdev: skip faulting disks pending removal #17400
  • CI: Retire Ubuntu 20.04 builder #17403
  • linux/zvol_os: don't try to set disk ops if alloc fails #17396
  • Linux build: always use objtool
  • Reviewed-by: Tony Hutter [email protected] #17401 #17364
  • tunables: fix spelling #17377
  • tunables: remove __check_old_set_param workaround #17377
  • tunables: remove unused param get/set aliases #17377
  • tunables: use Linux ullong param ops for u64 #17377
  • tunables: remove support for s64 tunables #17377
  • tunables: remove direct use of module_param_cb #17377
  • tunables: remove FreeBSD compat macros for Linux module params #17377
  • tunables: ensure tunable and variable have same define gate #17377
  • tunables: don't assert initialisation in impl getters #17377
  • zfs_log: make zfs_immediate_write_sz uint #17377
  • Only interrupt active disk I/Os in failmode=continue #17372
  • zcp: get_prop: fix encryptionroot and encryption #17280
  • ZVOL: Comment platform-specific empty functions bodies on FreeBSD side #17383
  • Expose dataset encryption status via fast stat path #17368
  • ZIL: Improve write log size accounting #17373
  • ZTS: testing for leaked key mappings in encrypted non-raw send #17366
  • Refactor man page and CLI help output per mandoc #17357
  • Reformat cli help and man page to be in sync #16004 #17357
  • Fix off-by-one bug in range tree code #17363
  • Fix null dereference in spa_vdev_remove_cancel_sync() #17361
  • Update 69-vdev.rules.in #17345
  • lzc_ioctl_fd: add ZFS_IOC_TRACE envvar to enable ioctl tracing #17344
  • lzc: move lzc_ioctl_fd() into lzc proper #17344
  • libzfs: ensure all ioctl calls go through lzc_ioctl_fd() #17344
  • Add Quality Assurance to pull request template #17354
  • dmu_objset_hold_flags() should call dsl_dataset_rele_flags() on error #17353
  • arcstat: prevent ZeroDivisionError when L2ARC becomes empty #17348
  • Linux 6.2/6.15: del_timer_sync() renamed to timer_delete_sync() #17229
  • Linux 6.15: mkdir now returns struct dentry * #17229
  • icp: Use explicit_memset() exclusively in gcm_clear_ctx() #17343
  • Fix 2 bugs in non-raw send with encryption #12014 #17340
  • Cause zpool scan resume commands to get logged in history #17301
  • ARC: Notify dbuf cache about target size reduction #17314
  • Linux: Stop using NR_FILE_PAGES for ARC scaling #17334
  • runners: Add option to install custom kernel on Fedora #17156
  • vdev_id: symlinks creation for multipath disk partitions (#17331)
  • AUTHORS/mailmap: update with new contributors
  • update_authors: output possible mailmap additions
  • For the moment, this needs to be done by a human, because update_authors
  • update_authors: consider Signed-off-by trailers for committer idents
  • test-runner: rework output dir construction #17167
  • spa: clear checkpoint information during retry #17319
  • linux/uio: remove "skip" offset for UIO_ITER #17298
  • More aggressively assert that db_mtx protects db.db_data #17209
  • FreeBSD: Use new SYSCTL_SIZEOF() #17309
  • ARC: Avoid overflows in arc_evict_adj() (#17255)
  • txg: generalise txg_wait_synced_sig() to txg_wait_synced_flags() (#17284)
  • ZTS: Restore some delays in online_offline tests
  • Fix race between resilver wait and offline/detach
  • tests: fix S_IFMT undeclared at statx.c #17293 #17294
  • ZTS: Stop zpool_status tests from spamming stdout (#17292)
  • Fix double spares for failed vdev
  • ZTS: Fix replacement/resilver_restart_001 on FreeBSD #16822 #17279
  • Sort the blocking snapshots list #12751 (#17264)
  • Double quote variables to prevent globbing and word splitting #17235
  • cred: properly pass and test creds on other threads (#17273)
  • ZTS: Optimize KSM on Linux and remove it for FreeBSD #17247
  • zfs-rollback.8: fix typo in example number #17282
  • ZTS: Use Ubuntu default url for cloud-image #17278
  • ZTS: Make zvol_stress write some more #17270
  • ZTS: Reduce extra caching in pool_checkpoint (#17268)
  • Support using llvm-libunwind #17230
  • Export correct symbols for Lustre Direct I/O #17256
  • Add more descriptive destroy error message
  • ZTS: Fix 256MB file leak in zed_cksum_reported
  • ZTS: Update FreeBSD version numbers
  • ZTS: Remove fixed sleeps from slog_006_pos
  • ZTS: Polish online_offline tests
  • ZTS: Remove ashift setting from dedup_quota test (#17250)
  • Cleanup VERIFY() macros (#17163)
  • vdev_to_nvlist_iter: ignore draid parameters when matching names (#17228)
  • Improve L2 caching control for prefetched indirects #17204
  • ZTS: Remove TXG_TIMEOUT from dedup_quota test (#17150)
  • Prefer embedded blocks to dedup #17113
  • ZAP: Reduce leaf array and free chunks fragmentation #16766

zfs-2.2.8

12 Jun 17:18
zfs-2.2.8

Choose a tag to compare

Supported Platforms

  • Linux: compatible with 4.18 - 6.15 kernels
  • FreeBSD: compatible with releases starting from 13.3+, 14.0+

Changes

  • Tag zfs-2.2.8
  • ZTS: Enable io_uring on CentOS Stream 9 and 10 also #17447
  • Linux build: silence objtool warnings #17410
  • linux/zvol_os: don't try to set disk ops if alloc fails #17396
  • ZTS: testing for leaked key mappings in encrypted non-raw send #17366
  • cred: properly pass and test creds on other threads (#17273)
  • Block remap for cloned blocks on device removal #15604 #17180
  • CI: Retire Fedora 40 builder #17408
  • ZTS: Enable io_uring support on el9/el10 #17397
  • ZTS: Add AlmaLinux 10 #17397
  • CI: Retire Ubuntu 20.04 builder #17403
  • Linux build: always use objtool
  • Reviewed-by: Tony Hutter [email protected] #17401 #17364
  • Linux 6.15 compat: META #17393
  • [zfs-2.2.8] Revert "vdev_disk: default to classic submission for 2.2.x"
  • ZTS: Stop zpool_status tests from spamming stdout (#17292)
  • [zfs-2.2.8] GCC: Fix array subscript check
  • Linux 6.14 compat: META (#17098) (#17172)
  • Linux 6.13 compat: META (#17098)
  • GCC 15: Fix unterminated-string-initialization (#17244)
  • debian: Add libtirpc-dev dependency (#17220)
  • contrib/initramfs: use LVM autoactivation for activating VGs (#17125)
  • Use <fcntl.h> instead of <sys/fcntl.h> #15925
  • Fix zoneid when USER_NS is disabled #15560
  • ZTS: Remove non-standard awk hex numbers usage #11141
  • RPM: Hold back incompatible kernel packages on Fedora #17265 #17271
  • Support for cross-compiling kernel modules #16924
  • fix: block incompatible kernel from being installed #16139
  • Add Quality Assurance to pull request template #17354
  • runners: Add option to install custom kernel on Fedora #17156
  • ZTS: Optimize KSM on Linux and remove it for FreeBSD #17247
  • ZTS: Use Ubuntu default url for cloud-image #17278
  • ZTS: Update FreeBSD version numbers
  • CI: Add Fedora 42 runner (#17249)
  • runners: Fix tarball build for zfs-qemu-packages workflow (#17158)
  • runners: Fix zfs-release RPM creation (#17173)
  • CI: Remove FreeBSD 13.3 and 14.1 tests (#17162)
  • Add 'zfs-qemu-packages' workflow for RPM building #17005
  • ZTS: add centos stream10 (#16904)
  • CI: Fix FreeBSD 13.4 STABLE build #16885
  • CI: Add FreeBSD 14.2 RELEASE+STABLE builds #16869
  • CI: Automate some GitHub PR status labels manipulations #16721
  • ARC: Avoid overflows in arc_evict_adj() (#17255)
  • dmu_objset_hold_flags() should call dsl_dataset_rele_flags() on error #17353
  • Linux 6.2/6.15: del_timer_sync() renamed to timer_delete_sync() #17229
  • Linux 6.15: mkdir now returns struct dentry * #17229
  • icp: Use explicit_memset() exclusively in gcm_clear_ctx() #17343
  • Fix 2 bugs in non-raw send with encryption #12014 #17340
  • Linux: Stop using NR_FILE_PAGES for ARC scaling #17334
  • Linux 6.0 compat: Check for migratepage VFS #17217
  • Use simple folio migration function #16568 #16723
  • Linux: Fix zfs_prune panics v2
  • linux: zvols: correctly detect flush requests #17131
  • Linux 6.14: BLK_MQ_F_SHOULD_MERGE was removed
  • Linux 6.14: dops->d_revalidate now takes four args
  • linux/uio: remove "skip" offset for UIO_ITER #17298
  • Fix compile-time warnings caused by duplicate struct typedefs (#16880)
  • config: fix dequeue_signal check for kernels <4.20

zfs-2.3.2

01 May 20:31
zfs-2.3.2

Choose a tag to compare

Supported Platforms

  • Linux: compatible with 4.18 - 6.14 kernels
  • FreeBSD: compatible with releases starting from 13.3+, 14.0+

Changes

  • RPM: Hold back incompatible kernel packages on Fedora #17265 #17271
  • CI: Add Fedora 42 runner (#17249)
  • GCC 15: Fix unterminated-string-initialization (#17244)
  • gcm_avx_init: zero the ghash state after hashing the IV
  • Fixed zfs_notify_email for programs like sendmail
  • config: fix ZFS_LINUX_TEST_RESULT_SYMBOL with --enable-linux-builtin #17236
  • Linux 6.0 compat: Check for migratepage VFS (#17217)
  • debian: Add libtirpc-dev dependency (#17220)
  • Fix memory leaks in pool properties handling #17208
  • Added fix for zpool get state segfaults with two or more vdevs (#15972). (#17213)
  • Fix FDT rollback to not overwrite unnecessary fields (#17205)
  • [2.3.2] uconv: add SPDX license tag
  • freebsd: unbreak module/Makefile.bsd build on 15-CURRENT-arm64 #17219
  • Fix nonrot property being incorrectly unset (#17206)
  • Multiple printf() size fixes (#17199)
  • Fix lock reversal on device removal cancel #17164
  • Fix dspace underflow bug #17183
  • simd_powerpc.h: enable FPU on FreeBSD #17191
  • spl_vfs: fix vrele task runner signature mismatch #17101
  • ZTS: Fix zpool dry run tests output formating
  • ZTS: Fix zpool dry run tests depending on output format
  • contrib/initramfs: use LVM autoactivation for activating VGs (#17125)
  • zed: Ensure spare activation after kernel-initiated device removal #17187
  • config: cache results of kernel checks (#17106)
  • Block remap for cloned blocks on device removal #15604 #17180
  • runners: Fix tarball build for zfs-qemu-packages workflow (#17158)
  • runners: Fix zfs-release RPM creation (#17173)
  • Linux: Fix zfs_prune panics v2 (#17121)
  • ZTS: Fix zpool_status_features_001_pos local test (#17174)
  • Disambiguate reference to kibibytes, not kilobytes
  • Fix spelling errors
  • Correct "umount" to "unmount" in a couple of places
  • Capitalize in various places where appropriate
  • Fix cases where "descendent" is used as a noun
  • Make use of "i.e." (id est) consistent
  • Harmonize on American spelling in several places
  • CI: Remove FreeBSD 13.3 and 14.1 tests (#17162)
  • Updating dio_read_verify ZTS test (#16830)
  • Fix deadlock on I/O errors during device removal #17145
  • Always perform bounds-checking in metaslab_free_concrete #17136
  • convert_wycheproof: don't check tag len on invalid tests
  • convert_wycheproof: fix compile failure
  • dmu_tx: rename dmu_tx_assign() flags from TXG_* to DMU_TX_* (#17143)
  • spdxcheck: program to check SPDX license tags
  • SPDX: license tags: LicenseRef-OpenZFS-ThirdParty-PublicDomain
  • SPDX: license tags: OpenSSL-standalone
  • SPDX: license tags: Brian-Gladman-3-Clause
  • SPDX: license tags: BSD-2-Clause OR GPL-2.0-only
  • SPDX: license tags: BSD-3-Clause OR GPL-2.0-only
  • SPDX: license tags: LGPL-2.1-or-later
  • SPDX: license tags: GPL-2.0-or-later
  • SPDX: license tags: Apache-2.0
  • SPDX: license tags: MIT
  • SPDX: license tags: BSD-3-Clause
  • SPDX: license tags: BSD-2-Clause
  • SPDX: license tags: CDDL-1.0
  • ZTS: ICP encryption tests
  • ZTS: test clearing pool and vdev userprops #16887
  • spa_sync_props: remove pool userprops by setting empty-string #16887
  • Add receive:append permission for limited receive #17015
  • Update FreeBSD CI images #17139
  • Fix deduplication of overridden blocks #17120
  • Linux/vnops: implement STATX_DIOALIGN #16972
  • Verify every block pointer is either embedded, hole, or has a valid DVA #17078
  • AUTHORS: refresh with recent new contributors
  • linux: zvols: correctly detect flush requests (#17131)
  • zed: Print return code on failed zpool_prepare_disk #17124
  • Check portable objset MAC even if local is zeroed #17122
  • Add more DDT tests #17049
  • ZTS: replace uses of TMPDIR with mktemp
  • ZTS: make uses of mktemp consistent
  • ZTS: zfs-tests: set TMPDIR to FILEDIR
  • ZTS: test-runner: always apply timestamp to outputdir before updating
  • ZTS: runfiles: remove explicit outputdir
  • ZTS: zfs-tests: use configured FILEDIR for all temp paths
  • ZTS: replace all uses of /var/tmp with TEST_BASE_DIR
  • Linux 6.14 compat: META (#17098) (#17172)
  • Revert "zinject: count matches and injections for each handler" (#17137)