Supported Platforms
- Linux: compatible with 4.18 - 7.0 kernels
- FreeBSD: compatible with releases starting from 13.3+, 14.0+
Changes
- abd: Fix stats asymmetry in case of Direct I/O #18390
- ZVOL: Add encryption key check for block cloning #18315
- Fix log vdev removal issues #18277
- Remove parent ZIO from dbuf_prefetch() #18214
- Simplify dnode_level_is_l2cacheable() #18212
- Rename several printf attributes declarations to printf #18095
- When reading a vdev label skip libzfs_core_init() #18606
- dsl_scan: close errorscrub cursor on pause #18603
- enforce exact decompressed length for lz4, gzip, and zstd #18599
- FreeBSD: Make it possible to build openzfs.ko with sanitizers #18596
- spl_kvmalloc: remove __GFP_COMP before calling vmalloc() #18558
- zap_impl: use flex array field for mzap_phys_t.mz_chunks #18550
- arc: export additional required symbols #18533
- Fix double free for blocks cloned after DDT prune #18520
- zarcstat: detect attached L2ARC device with no data #18499
- zdb: detect BRT and DDT leaks during block traversal #18494
- sa: fix sa_add_projid lock ordering #18503
- zfs: annotate nested dd_lock in reservation sync accounting #18497
- Fix off-by-one in PREVIOUSLY_REDACTED handler that drops last block #18477
- key lookup failure should always return EACCES #18448
- Fix "panic: cache_vop_rename: lingering negative entry" #18430
- Fix aarch64 build failure by removing earlyclobber (#18532)
- Linux 5.6 compat: fix fs_parse API mismatch #18585
- linux/super: properly apply ro/rw mount option to superblock #18557 #18563
- config: show progress output for kernel API checks #18554
- linux: suppress reclaim lockdep in zfs_inactive via rwlock wrappers #18505
- linux/zpl_super: handle 'source' option directly #18529
- Linux: avoid znode list lock inversion during resume #18517
- Linux: annotate nested xattr setattr znode locks #18506
- linux: verify stale znodes in legacy fallocate #18458
- ZTS: relax zpool_import_parallel_pos.ksh timing #18634
- Fix uninitialized variable warning in zil_parse() #18633
- Add additional verification of size fields and strings (#18623) #18623
- CI: Add alternative URLs for CentOS stream #18628
- CI: Increase default RCU stall timeout on Linux #18624
- CI: Update CodeQL actions to v4 #18629
- CI: Re-enable CodeQL workflows on push #18627
- Remove /etc/sudoers.d/zfs #18626
- pam: use open fd instead of path #18618
- Extend dataset zfs_ioc_set_prop() secpolicy #18617
- Fix uninitialized variable warning in vdev_prop_get() #18616
- sharenfs: Check for invalid characters #18613
- Fix the integer type in zfs_ioc_userspace_many() #18615
- nvpair: Check for un-terminated strings in packed nvlist #18604
- CI: add concurrency support to zfs-arm #18608
- CI: apt-get update before purging host packages #18607 #18609
- CI: skip smatch, zloop, and zfs-arm for documentation-only changes #18601
- CI: Lustre 6.16 kernel compatibility fix (#18602)
- CI: Update checkstyle checkout action to v6 #18600
- .github: update workflows README #18590
- CI: run full CI when a workflow YAML changes #18577
- CI: skip full CI runs on push events #18571
- CI: enable FreeBSD 15.0-RELEASE in matrix #18561
- CI: Build custom branch from zfs-qemu-packages #18569
- ZTS: zfs_unshare_006_pos.ksh enable usershares #18547
- CI: Fix qemu-guest-agent systemd enable #18547
- CI: Add Ubuntu 26.04 builder #18547
- CI: remove FreeBSD 13.5 (EOL April 30, 2026) #18553
- CI: Allow testing with a newer GCC on ARM builder #18540
- CI: Remove deprecated Fedora 42 #18545
- CI: Fix 99.99 META version #18526 #18531
- CI: FreeBSD 15.1 STABLE #18524
- CI: skip qemu matrix for documentation-only pull requests #18518