• zfs-2.2.4 2566592045

    zfs-2.2.4 Stable

    tonyhutter released this 2024-05-02 20:56:23 +00:00 | 324 commits to master since this release

    Supported Platforms

    • Linux: compatible with 3.10 - 6.8 kernels
    • FreeBSD: compatible with releases starting from 12.2-RELEASE

    Changes

    • Fix updating the zvol_htable when renaming a zvol #16127 #16128
    • Add prefetch property #15237 #15436
    • vdev probe to slow disk can stall mmp write checker #15839
    • Extend import_progress kstat with a notes field #15539
    • Add ashift validation when adding devices to a pool #15509
    • Fix arcstats for FreeBSD after zfetch support #16141
    • Add zfetch stats in arcstats #16094
    • Use ASSERT0P() to check that a pointer is NULL. #15225
    • GCC: Fixes for gcc 14 on Fedora 40 #16124 #16125
    • Python 3.12 deprecated python3-distutils #16126 #16129
    • zfs-kmod: fix empty rpm requires/conflicts #16121
    • ZTS: user_namespace_004.ksh avoid error in cleanup if unsupported #16114
    • Add newline to two zpool messages #16113
    • Do no use .cfi_negate_ra_state within the assembly on Arm64 #14965 #15784
    • Add the BTI elf note to the AArch64 SHA2 assembly #16086
    • AUTHORS: refresh with recent new contributors #16079
    • return NULL at end of send_progress_thread #16074
    • Fix locale-specific time #15878 #15879
    • Fix panics when truncating/deleting files #15983
    • vdev props comment and manpage should include zfsd and FreeBSD mentions #15968
    • Add slow disk diagnosis to ZED #15469
    • [2.2.4-only] Stub RAIDZ enums to prevent conflicts
    • zap_leaf: make l_hash[] variable length to silence UBSAN #15964
    • Give a better message from 'zpool get' with invalid pool name #15942
    • xdr: header cleanup #16047 #16051
    • Fix buffer underflow if sysfs file is empty #16028 #16035
    • ZTS: fix flakiness in cp_files_002_pos #16029
    • Fix option string, adding -e and fixing order #16008
    • freebsd: fix missing headers in distribution tarball #15963
    • Check for minimum partition size #15898
    • Add VERIFY0P() and ASSERT0P() macros. #15225
    • Clean up existing VERIFY*() macros. #15225
    • etc/init.d: decide which variant to use at build time. #15977
    • config/Substfiles.am: restrict to the dedicated list. #15980
    • man: move zfs_prepare_disk.8 to nodist_man_MANS #15979
    • Add support for zfs mount -R #16015
    • Linux 6.9 compat: blk_alloc_disk() now takes two args #16027 #16033
    • Linux 6.9 compat: bdev handles are now struct file #16027 #16033
    • vdev_disk: clean up spa/bdev mode conversion #15995
    • Linux 5.18+ compat: Detect filemap_range_has_page #16034
    • udev: correctly handle partition #16 and later #15904 #15970
    • zvols: prevent overflow of minor device numbers #16006
    • Linux 6.8 compat: META (#16099)
    • bdev_discard_supported: understand discard_granularity=0
    • L2ARC: Relax locking during write #16040
    • Small fix to prefetch ranges aggregation #16072
    • Remove db_state DB_NOFILL checks from syncing context #16057
    • Speculative prefetch for reordered requests #16022
    • Fix read errors race after block cloning #16052
    • Improve dbuf_read() error reporting #16042
    • BRT: Check pool clone stats in more tests #16007
    • BRT: Fix tests to work on non-empty pools #16007
    • BRT: Fix holes cloning. #15994 #16007
    • BRT: Skip getting length in brt_entry_lookup() #15950
    • BRT: Make BRT block sizes configurable #15967
    • BRT: Relax brt_pending_apply() locking #15955
    • ZAP: Massively switch to _by_dnode() interfaces #15951
    • BRT: Skip duplicate BRT prefetches #15941
    • ZAP: Some cleanups/micro-optimizations #15976
    • BRT: Change brt_pending_tree sorting order #15954
    • Update resume token at object receive. #15927
    • Linux: Cleanup taskq threads spawn/exit #15873
    • Refactor dmu_prefetch(). #15076
    • ZIL: Update Linux tracing after #15635 #15730
    • ZIL: Improve next log block size prediction #15635
    • ZIO: Optimize zio_flush() #15515
    • ZIL: Detect single-threaded workloads #15381
    • zvol_os: fix compile with blk-mq on Linux 4.x #16069
    • zvol_os: fix build on Linux <3.13 #16062
    • zvol: use multiple taskq #15992
    • vdev_disk: fix alignment check when buffer has non-zero starting offset
    • vdev_disk: ensure trim errors are returned immediately
    • vdev_disk: don't touch vbio after its handed off to the kernel
    • Fix corruption caused by mmap flushing problems #15933 #16019
    • vdev_disk: default to classic submission for 2.2.x
    • abd_iter_page: don't use compound heads on Linux <4.5 #15533 #15588
    • vdev_disk: use bio_chain() to submit multiple BIOs #15533 #15588
    • vdev_disk: add module parameter to select BIO submission method #15533 #15588
    • vdev_disk: rewrite BIO filling machinery to avoid split pages #15533 #15588
    • vdev_disk: make read/write IO function configurable #15533 #15588
    • vdev_disk: reorganise vdev_disk_io_start #15533 #15588
    • vdev_disk: rename existing functions to vdev_classic_* #15533 #15588
    • abd: add page iterator #15533 #15588
    • linux 5.4 compat: page_size() #15533 #15588
    • Linux 6.8 compat: use splice_copy_file_range() for fallback #15930 #15931
    Downloads