Supported Platforms
- Linux: compatible with 3.10 - 6.7 kernels
- FreeBSD: compatible with releases starting from 12.2-RELEASE
Changes
- Avoid calling rw_destroy() on uninitialized rwlock #13976
- Fix GCC 12 compilation errors #14150
- libzfs_sendrecv: Style pass on send_print_verbose #12967
- Linux 6.7 compat: META #15833
- Linux 6.6 compat: META #15520
- ZTS: Debug zfs_share_concurrent_shares failure #15379
- tests: zfs_share_concurrent_shares: don't use log_musts in subprocesses #13259
- Fix the FreeBSD userspace build (#15716)
- [zfs-2.1.15] Update ABI files
- ZTS: Fix zfs_load-key failures on F39 #15534 #15550
- LUA: Backport CVE-2020-24370's patch #15847
- Add 'zpool status -e' flag to see unhealthy vdevs #15769
- zpool: Add slot power control, print power status #15662
- zed: fix typo in variable ZED_POWER_OFF_ENCLOUSRE_SLOT_ON_FAULT #15651
- ZTS: Add dirty dnode stress test #15608
- ZTS: Fix 'could not unmount datasets' on Alma 9 (#15542)
- zed: misc vdev_enc_sysfs_path fixes #15462
- Add zfs_prepare_disk script for disk firmware install #15243
- Linux 6.8 compat: replace MAX_ORDER define #15805
- Linux 6.8 compat: implement strlcpy fallback #15805
- Linux 6.8 compat: update for new bdev access functions #15805
- Linux 6.8 compat: make test functions static #15805
- Linux 6.7 compat: zfs_setattr fix atime update #15762 #15773
- Linux 6.5 compat: check BLK_OPEN_EXCL is defined #15692
- linux 6.7 compat: rework shrinker setup for heap allocations
- linux 6.7 compat: handle superblock shrinker member change
- linux 6.7 compat: use inode atime/mtime accessors
- linux 6.7 compat: simplify current_time() check
- Linux 6.6 compat: fix configure error with clang (#15558)
- Linux 6.6 compat: fsync_bdev() has been removed in favor of sync_blockdev() #15263
- Linux 6.6 compat: generic_fillattr has a new u32 request_mask added at arg2 #15263
- Linux 6.6 compat: use inode_get/set_ctime*(...) #15263 #15257
- Workaround UBSAN errors for variable arrays #15510
- FreeBSD: catch up to __FreeBSD_version 1400093 #15036
- spa: Let spa_taskq_param_get()'s addition of a newline be optional #15719
- spa: Fix FreeBSD sysctl handlers #15719
- freebsd: fix compile for spa_taskq_read/spa_taskq_write params
- [2.1] compat: add check for kernel_neon_* availability
- spa: make read/write queues configurable
- libshare: nfs: pass through ipv6 addresses in bracket notation #11939
- ZTS: Disable io_uring test on CentOS 9 #15636
- Report ashift of L2ARC devices in zdb #15331
- zfs-dkms: fix shell-init error message #15576
- Fix dkms installation of deb packages created with Alien. #15415