Supported Platforms
- Linux: compatible with 4.18 - 7.0 kernels
- FreeBSD: compatible with releases starting from 13.3+, 14.0+
Changes
- initramfs: fix incorrect variable rename #18442
- Fix long POSIX_FADV_DONTNEED for single block files #18399 #18489
- Add support for POSIX_FADV_DONTNEED #18399
- Cleanup allocation class selection #18208
- [2.4.2-only] GCC: Fix uu_ident.c strchr()
- libspl/mnttab: follow symlinks when resolving path via statx (#18469)
- Fix vdev_rebuild_range() tx commit #18276
- Fix redundant declaration of dsl_pool_t #18263
- CI: FreeBSD 15.1 PRERELEASE (#18490)
- CI/GCC: Add Fedora 44, fix build errors and threadsappend #18478
- Linux 7.1: access dentry d_alias directly #18471
- Initialize vr_last_txg for rebuild #18482
- Fix rare cksum errors after rebuild #18307 #18319 #18473
- ZTS: add targeted redundancy_draid_spare exception #18436
- build: use pax tar format for make dist
- CI: curl fallback, print killed tests, FreeBSD URL #18460
- Fix 'kernel BUG at mm/usercopy.c' #15918 #18408
- dmu_direct: avoid UAF in dmu_write_direct_done() #18440
- Prevent range tree corruption race by updating dnode_sync() #18235
- range_tree: use zfs_panic_recover() for partial-overlap remove #18255
- [zfs-2.4.2] Whitelist some Makefile.am files from SPDX
- Fix read corruption after block clone after truncate #18412 #18421
- Fix snapshot automount deadlock during concurrent zfs recv #18415
- Fix options memory leak in zfsctl_snapshot_mount #18415
- Fix s_active leak in zfsvfs_hold() when z_unmounted is true #18309 #18310
- fix memleak in spa_errlog.c #18403
- CI: Add more debugging to qemu-1-setup.sh #18441
- CI: tolerate missing artifacts #18438
- CI: Do not set scheduler in qemu-1-setup.sh #18437
- Linux 7.0 compat: META #18435
- deb.am: propagate build errors in native-deb targets #18206 #18424
- draid: fix cksum errors after rebuild with degraded disks #18414
- CI: Disable ZIP file artifacts, update versions #18411
- CI: set /etc/hostid in zloop runner #18413
- draid: allow seq resilver reads from degraded vdevs #18405
- Linux: Refactor zpl_fadvise() #18395
- CI: Free 35GB of unused files on the runner #18400
- linux/vfsops: remove zfs_mnt_t, pass directly #18377
- linux/super: work around kernels that enforce "forbidden" mount options #18377
- linux/super: implement new mount params parser #18377
- linux/super: match vfs_t lifetime to fs_context #18377
- linux/super: remove zpl_parse_monolithic #18377
- linux/vfsops: remove old options parser #18377
- linux/vfsops: add vfs_t allocator, make public #18377
- draid: fix import failure after disks replacements #18380
- Linux 7.0: ensure LSMs get to process mount options #18376
- ci: update FreeBSD CI images from 14.3 to 14.4 #18362
- Linux 7.0: autoconf: Remove copy-from-user-inatomic API checks (#18348) (#18354)
- CI: Add ARM builder #18343
- CI: Support repository variable override for ZTS OS selection #18342
- linux/super: flatten zpl_fill_super into zpl_get_tree #18339
- linux/super: flatten zpl_mount_impl into zpl_get_tree #18339
- linux/super: flatten mount/remount into get_tree/reconfigure #18339
- linux/super: remove support for old mount API #18339
- config: refuse to build without fs_context #18339
- Linux 7.0: also set setlease handler on directories (#18331)
- ZTS: Add back redundancy_draid_spare3 exception #18320
- ZTS: redundancy_draid_spare{1,3} exceptions #18308
- config: fix STATX_MNT_ID detection #18312
- draid: fix data corruption after disk clear #18286 #18294
- Fix deadlock on dmu_tx_assign() from vdev_rebuild() #18210 #18258
- README: describe specific kernels/distros we target #18295
- config: remove minimum kernel version check #18295
- libzfs: use mount_setattr for selective remount including legacy mounts #18257
- FreeBSD: Improve dmesg kernel message prefix #18290
- Fix check for .cfi_negate_ra_state on aarch64 #18262
- zpl_super: prefer "new" mount API when available #18260
- CI: Remove deprecated Fedora 41 #18261
- Linux 7.0: add shims for the fs_context-based mount API #18216
- Linux 7.0: posix_acl_to_xattr() now allocates memory #18216
- Linux 7.0: blk_queue_nonrot() renamed to blk_queue_rot() #18216
- build: get objtool from $kernelbuild #18248 #18249
- Linux 7.0: explicitly set setlease handler to kernel implementation #18215
- spdxcheck: enforce SPDX license tags on build system files #18077
- build: add SPDX license tags to build system files #18077