Skip to content

Releases: openzfs/zfs

zfs-2.2.4

02 May 22:55
zfs-2.2.4
Compare
Choose a tag to compare

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

zfs-2.1.15

26 Feb 23:58
zfs-2.1.15
Compare
Choose a tag to compare

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

zfs-2.2.3

22 Feb 20:30
zfs-2.2.3
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • ZTS: Skip cross-fs bclone tests if FreeBSD < 14.0 #15901
  • [zfs-2.2.3] ZTS: Use correct bclone module param name on FreeBSD
  • zdb: Fix false leak report for BRT objects #15882
  • Add Ntfy notification support to ZED #15584
  • BRT: Fix slop space calculation with block cloning #15874
  • zfs list: add '-t fs' and '-t vol' options (#15883) #15864
  • [zfs-2.2.3] Enable zfs_bclone_enabled on cp_files tests
  • LUA: Backport CVE-2020-24370's patch #15847
  • Add 'zpool status -e' flag to see unhealthy vdevs #15769
  • zed: fix typo in variable ZED_POWER_OFF_ENCLOUSRE_SLOT_ON_FAULT #15651
  • Improve performance for zpool trim on linux #15843
  • BRT: Fix FICLONE/FICLONERANGE shortened copy #15728 #15842
  • Fix the FreeBSD userspace build (#15716)
  • zpool: Add slot power control, print power status #15662
  • zed: misc vdev_enc_sysfs_path fixes #15462
  • ZTS: Add dirty dnode stress test #15608
  • Linux 6.8 compat: handle mnt_idmap user_namespace change #15805
  • Linux 6.8 compat: fix inode permission tests #15805
  • 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: META #15833
  • Don't assert mg_initialized due to device addition race #15818
  • Update man pages to time(1) from time(2) #15823
  • ZTS: Allow longer run time for zdb_args_pos #15826
  • Move nodes into correct subgraphs #15828
  • zpool wait: print timestamp before the header #15825
  • Update vdev devid and physpath if changed between imports #15816
  • ZTS: Update deprecated Github Action version numbers #15820
  • Switch to CodeQL to detect prohibited function use #15819 #14134
  • ZTS: Apply small changes for speeding up the tests #15811
  • FreeBSD: Fix bootstrapping tools under Linux/musl #15780
  • linux spl: fix typo in top comment of spl-condvar.c #15782
  • Make sure all necessary RPM path macros are defined #15756
  • Make spl_kmem_cache size check consistent #15757
  • Add path handling for aux vdevs in label_path #15737
  • Extend aux label to add path information #15737
  • fix: Uber block label not always found for aux vdevs #15737
  • Fix "out of memory" error #15747
  • fix: preserve linux kmod signature in zfs-kmod rpm spec #15744
  • fix(mount): do not truncate shares not zfs mount #15607 #15660
  • Fix a potential use-after-free in zfs_setsecattr() #15752
  • Linux: Defer loading the object set in zfs_setattr() #15752
  • Make zdb -R scale less poorly #15726
  • Stop wasting time on malloc in snprintf_zstd_header #15721
  • Fix file descriptor leak on pool import. #15630
  • ZTS: Apply zfs_bclone_enabled to bclone tests #15796
  • fix: variable type with zfs-tests/cmd/clonefile.c #15783
  • Fix cloning into mmaped and cached file. #15772
  • ZTS: Test for clone, mmap and write for block cloning #15717
  • Enable block_cloning tests on FreeBSD #15749
  • Block cloning tests. #15631
  • Test LWB buffer overflow for block cloning #15672
  • ZTS: Add test cases for block cloning replay #15614
  • ZTS: block_cloning: Use numeric sort for get_same_blocks #15614
  • Autotrim High Load Average Fix #15781
  • Linux 6.7 compat: zfs_setattr fix atime update #15762 #15773
  • compact: workaround for GPL-only symbols on riscv from Linux 6.2 #14974 #15627
  • 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
  • Fix livelist assertions for dedup and cloning #15732
  • Improve block sizes checks during cloning #15724 #15735
  • Linux 6.2 compat: add check for kernel_neon_* availability #15711 #14555
  • Don't panic on unencrypted block in encrypted dataset #15677
  • dbuf: Set dr_data when unoverriding after clone #15654 #15656
  • dbuf: Handle arcbuf assignment after block cloning #15653
  • DMU: Fix lock leak on dbuf_hold() error #15644
  • BRT: Limit brt_vdev_dump() to only one vdev #15625
  • ZIL: Remove 128K into 2x68K LWB split optimization #15634
  • zdb: Dump encrypted write and clone ZIL records #15629
  • Allow block cloning across encrypted datasets #15544
  • ZIL: Do not clone blocks from the future #15617
  • ZIL: Remove TX_CLONE_RANGE replay for ZVOLs. #15612
  • ZIO: Add overflow checks for linear buffers #15553
  • ZIL: Assert record sizes in different places #15517
  • L2ARC: Restrict write size to 1/4 of the device #15519
  • Linux: Reclaim unused spl_kmem_cache_reclaim #15507
  • FreeBSD: Optimize large kstat outputs #15495
  • Update the kstat dataset_name when renaming a zvol #15482 #15486
  • ABD: Be more assertive in iterators #15428
  • spa: make read/write queues configurable
  • Linux 6.5 compat: check BLK_OPEN_EXCL is defined #15692
  • ZTS: Disable io_uring test on CentOS 9 #15636
  • 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

zfs-2.2.2

01 Dec 02:52
zfs-2.2.2
Compare
Choose a tag to compare

Supported Platforms

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

Changes

Note: This release contains an important fix for a data corruption bug. Full details are in the issue (#15526) and bug fix (#15571). There's also a developer's bug summary that gives a good overview. We recommend everyone either upgrade to 2.2.2 or 2.1.14 to get the fix. The bug can cause data corruption due to an incorrect dirty dnode check. This bug is very hard to hit, and really only came to light due to changes in cp in coreutils 9.x. It's extremely unlikely that the bug was ever hit on EL7 or EL8, when running cp since they all use coreutils 8.x which performs file copies differently.

Updated (12/1/23):
EL9 was previously vulnerable since it uses coreutils 8.32 with the SEEK_DATA/SEEK_HOLE patches backported from coreutils 9.x.

  • FreeBSD: Fix ZFS so that snapshots under .zfs/snapshot are NFS visible #15563
  • ZIL: Call brt_pending_add() replaying TX_CLONE_RANGE #15603
  • zdb: fix printf() length for uint64_t devid #15606
  • Linux 6.6 compat: fix configure error with clang (#15558)
  • zfs-dkms: fix shell-init error message #15576
  • FreeBSD: Fix the build on FreeBSD 12 #15551
  • dmu_buf_will_clone: fix race in transition back to NOFILL #15566 #15526
  • zdb: Fix zdb '-O|-r' options with -e/exported zpool #15532
  • zdb: show BRT statistics and dump its contents #15541
  • brt: lift internal definitions into _impl header #15541
  • ZTS: Fix zfs_load-key failures on F39 #15534 #15550
  • ZIL: Do not encrypt block pointers in lr_clone_range_t #15543 #15513
  • dnode_is_dirty: check dnode and its data for dirtiness #15571 #15526
  • Revert "Tune zio buffer caches and their alignments"

zfs-2.1.14

01 Dec 02:49
zfs-2.1.14
Compare
Choose a tag to compare

Supported Platforms

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

Changes

Note: This release contains an important fix for a data corruption bug. Full details are in the issue (#15526) and bug fix (#15571). There's also a developer's bug summary that gives a good overview. We recommend everyone either upgrade to 2.2.2 or 2.1.14 to get the fix. The bug can cause data corruption due to an incorrect dirty dnode check. This bug is very hard to hit, and really only came to light due to changes in cp in coreutils 9.x. It's extremely unlikely that the bug was ever hit on EL7 or EL8 when running cp since they all use coreutils 8.x which performs file copies differently.

Updated (12/1/23):
EL9 was previously vulnerable since it uses coreutils 8.32 with the SEEK_DATA/SEEK_HOLE patches backported from coreutils 9.x.

  • copy-builtin: add hooks with sed/>> #13316
  • Zpool can start allocating from metaslab before TRIMs have completed #15395
  • dnode_is_dirty: check dnode and its data for dirtiness #15571 #15526

zfs-2.2.1

22 Nov 01:02
zfs-2.2.1
Compare
Choose a tag to compare

Supported Platforms

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

Changes

Note: We recommend that anyone running zfs-2.2.0 to please update to this release. Gentoo users have identified a block cloning bug (#15526) that can result in data corruption in zfs-2.2.0. To workaround this, zfs-2.2.1 disables block cloning by default (see #15529 and 479dca5). Users running the 2.1.x branch or older are unaffected, as block cloning is a 2.2.x-only feature.

  • ZTS: Fix 'could not unmount datasets' on Alma 9 (#15542)
  • zfs-2.2.1: Disable block cloning by default (479dca5)
  • Add a tunable to disable BRT support. #15529
  • Packaging: Auto-generate changelog during configure (#15528)
  • Linux 6.6 compat: META #15520
  • Workaround UBSAN errors for variable arrays #15510
  • ZTS: Test for all known zpool feature sets #15505
  • Update zpool-features.7 for grub2 compatibility list updates #15505
  • Workaround to allow openzfs-zfs-dkms install on Ubuntu #15503
  • Linux: reject read/write mapping to immutable file only on VM_SHARED #15344
  • Fix accounting error for pending sync IO ops in zpool iostat #15478
  • Linux 6.6 compat: fix implicit conversion error with debug build #15489
  • Remove obsolete_counts from grub2 compatibility list #15499
  • Fix dkms installation of deb packages created with Alien. #15415
  • Add all read-only compatible zpool features to grub2 compatibility #15459
  • Unify arc_prune_async() code #15456
  • Tune zio buffer caches and their alignments #15452
  • DMU: Do not pre-read holes during write #15371
  • 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
  • Read prefetched buffers from L2ARC #15451
  • Add mutex_enter_interruptible() for interruptible sleeping IOCTLs #15360
  • Revert "zvol: Temporally disable blk-mq" #15439
  • zvol: Remove broken blk-mq optimization #15351
  • "ARC prefetch metadata accesses:" appears twice in the output. #15427
  • Trust ARC_BUF_SHARED() more #15397
  • Remove lock from dsl_pool_need_dirty_delay() #15390
  • run-zts test procfs/pool_state failed with uncorrectable I/O failure #15364
  • Properly pad struct tx_cpu to cache line #15402
  • Fix typo in tests/zfs-tests/tests/functional/cli_user/misc/misc.cfg #15417
  • FreeBSD: taskq: Remove unused declaration #15416
  • Set spa_ccw_fail_time=0 when expanding a vdev. #15405
  • Fix ZED auto-replace for VDEVs using by-id paths #15363
  • Add zfs_prepare_disk script for disk firmware install #15243
  • Large sync writes perform worse with slog #14378
  • FreeBSD: Improve taskq wrapper #15356
  • Fix block cloning between unencrypted and encrypted datasets #15464 #15465

zfs-2.2.0

13 Oct 17:13
zfs-2.2.0
Compare
Choose a tag to compare

Supported Platforms

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

New Features

  • Block cloning (#13392) - Block cloning is a facility that allows a file (or parts of a file) to be "cloned", that is, a shallow copy made where the existing data blocks are referenced rather than copied. Later modifications to the data will cause a copy of the data block to be taken and that copy modified. This facility is used to implement "reflinks" or "file-level copy-on-write". Many common file copying programs, including newer versions of /bin/cp on Linux, will try to create clones automatically.

  • Linux container support (#12209, #14070, #14097, #12263) - Added support for Linux-specific container interfaces such as renameat(2), support for overlayfs, idmapped mounts in a user namespace, and namespace delegation support for containers.

  • Scrub error log (#12812, #12355) - zpool status will report all filesystems, snapshots, and clones affected by a shared corrupt block. zpool scrub -e can be used to scrub only the known damaged blocks in the error log to perform a fast, targeted repair when possible.

  • BLAKE3 checksums (#12918) - BLAKE3 is a modern cryptographic hash algorithm focused on high performance. It is much faster than sha256, sha512, and can be up 3x faster than Edon-R. BLAKE3 is the recommended secure checksum.

  • Corrective "zfs receive" (#9372) - A new type of zfs receive which can be used to heal corrupted data in filesystems, snapshots, and clones when a replica of the data already exists in the form of a backup send stream.

  • Vdev properties (#11711) - Provides observability of individual vdevs in a programmatic way.

  • Vdev and zpool user properties (#11680) - Lets you set custom user properties on vdevs and zpools, similar to the existing zfs dataset user properties.

Performance

  • Fully adaptive ARC (#14359) - A unified ARC which relaxes the artificial limits imposed by both the MRU/MFU distribution and data/metadata distinction. This allows the ARC to better adjust to highly dynamic workloads and minimizes the need for manual workload-dependent tuning.

  • SHA2 checksums (#13741) - Optimized SHA2 checksum implementation to use hardware acceleration when available.

  • Edon-R checksums (#13618) - Reworked the Edon-R variants and optimized the code to make several minor speed ups.

  • ZSTD early abort (#13244) - When using the zstd compression algorithm, data that can not be compressed is detected quickly, avoiding wasted work.

  • Prefetch improvements (#14603, #14516, #14402, #14243, #13452) - Extensive I/O prefetching analysis and optimization.

  • General optimization (#14121, #14123, #14039, #13680, #13613, #13606, #13576, #13553, #12789, #14925, #14948) - Numerous performance improvements throughout.

Additional Information

  • Documentation - OpenZFS documentation for Linux and FreeBSD.

  • Change log - Complete v2.1.0 - v2.2.0 change log

    Thanks to 202 contributors
     git shortlog -s  zfs-2.1.0..zfs-2.2.0
     639  Ahelenia ZiemiaΕ„ska
       1  Aidan Harris
       5  Akash B
      10  Alan Somers
       1  Alejandro Colomar
       2  Alek Pinchuk
       4  Aleksa Sarai
       8  Alexander Lobakin
     126  Alexander Motin
      22  Allan Jude
       2  Alyssa Ross
      23  Ameer Hamza
       1  Andrea Gelmini
       2  Andrea Righi
       1  Andreas VΓΆgele
       4  Andrew Innes
       1  Andrew Turner
       3  Andrew Walker
       4  Andriy Gapon
       1  Anton Gubarkov
       6  Antonio Russo
       1  Armin Wehrfritz
       3  Arshad Hussain
       1  Arun KV
      22  Attila FΓΌlΓΆp
       1  Benedikt Neuffer
       1  Brandon Thetford
       8  Brian Atkinson
     183  Brian Behlendorf
      16  Brooks Davis
       1  Charles Suh
       3  Chris Lindee
       1  Chris Zubrzycki
      12  Christian Schwarz
       6  Chunwei Chen
       1  Clemens Lang
      26  Coleman Kane
       3  Colm Buckley
       2  D. Ebdrup
      40  Damian Szuberski
       1  Damiano Albani
       1  Daniel Berlin
       1  Daniel Hiepler
       1  Daniel Kolesa
       1  Daniel Reichelt
       1  Daniel Stevenson
       1  David Hedberg
       1  Dimitri John Ledkov
       3  Dimitry Andric
       1  Dmitri John Ledkov
       3  Don Brady
       1  Doug Rabson
       1  Edmund Nadolski
       1  Ethan Coe-Renner
       6  Fedor Uporov
       1  Felix DΓΆrre
       4  Finix Yan
       1  Francesco Mazzoli
      36  George Amanakis
      20  George Melikov
       7  George Wilson
       2  Georgy Yakovlev
       1  Gian-Carlo DeFazio
       4  Gionatan Danti
       1  Glenn Washburn
       1  Gordon Bergling
       1  Graham Perrin
       3  Gregory Bartholomew
       1  Han Gao
       1  Harald van Dijk
       1  Harry Sintonen
       1  Herb Wartens
       2  InsanePrawn
       1  Jason Harmening
       1  Jason King
       1  Jeremy Visser
       4  Jitendra Patidar
       1  John Poduska
       8  John Wren Kennedy
       1  Jonathon Fernyhough
      24  Jorgen Lundman
       1  JosΓ© Luis Salvador Rufo
       1  Julian Brunner
       6  Justin Gottula
       1  Justin Hibbits
       2  Ka Ho Ng
       3  Kay Pedersen
       1  Kevin Bowling
       4  Kevin Jin
       1  Kristof Provost
       1  Krzysztof Piecuch
       3  Kyle Evans
       1  Laevos
       2  Laura Hild
       1  LaurenΘ›iu Nicola
       1  Lauri Tirkkonen
       1  LuΓ­s Henriques
       2  Manoj Joseph
       1  Marcel Menzel
       1  Marcin Skarbek
       4  Mariusz Zaborski
      20  Mark Johnston
       1  Mark Maybee
       7  Martin MatuΕ‘ka
       2  Martin RΓΌegg
      23  Mateusz Guzik
       6  Mateusz Piotrowski
       1  Matt Fiddaman
      12  Matthew Ahrens
       1  Matthew Thode
       1  Matthias Blankertz
       1  Max Zettlmeißl
       1  Michael Franzl
       1  Michal Vasilek
       3  Mike Swanson
       1  Minsoo Choo
       1  Mohamed Tawfik
       1  Nathaniel Wesley Filardo
       1  Neal Gompa (ニール・ゴンパ)
       1  Nick Terrell
       2  Olaf Faaland
       1  Pablo Correa GΓ³mez
       1  Palash Gandhi
      31  Paul Dagnelie
       5  Paul Zuchowski
       1  Pavel Snajdr
      21  Pawel Jakub Dawidek
       2  Peter Levine
       1  Phil Kauffman
       1  Philipp Riederer
       2  Ping Huang
       1  Piotr Kubaj
       2  Piotr P. Stefaniak
       2  Prakash Surya
       1  Rafael Kitover
       1  Reno Reckling
       2  Riccardo Schirone
      83  Rich Ercolani
       1  Richard Laager
     197  Richard Yao
      40  Rob Norris
      11  Rob Wing
       1  Roberto Ricci
       1  Romain Dolbeau
       1  Ryan Hirasaki
       1  Ryan Lahfa
      88  Ryan Moeller
       1  Sam Hathaway
       1  Sam James
       1  Samuel Wycliffe
       1  Samuel Wycliffe J
       1  Satadru Pramanik
       5  Savyasachee Jha
       1  Scott Colby
       1  Sean Eric Fagan
      11  Serapheim Dimitropoulos
       1  Shaan Nobee
       4  Stoiko Ivanov
       1  StΓ©phane Lesimple
       2  Teodor Spæren
       1  TerraTech
       1  Till Maas
       1  Timothy Day
      37  Tino Reichardt
       2  Tomohiro Kusumi
      25  Tony Hutter
       1  Tony Nguyen
       6  Toomas Soome
       1  Toyam Cox
       1  Trevor Bautista
      16  Umer Saleem
       8  Val Packett
       1  Valmiky Arquissandas
       3  Vince van Oosten
       1  Violet Purcell
       1  Vipin Kumar Verma
       1  Volker Mauel
       2  VΓ‘clav SkΓ‘la
       9  WHR
       1  Walter Huf
       1  Will Andrews
       1  Windel Bouwman
       1  Wojciech MaΕ‚ota-WΓ³jcik
       2  Xinliang Liu
       1  Yann Collet
       1  Yanping Gao
      13  Youzhong Yang
       4  Yuri Pankov
       1  Zach Dykstra
       1  Zhu Chuang
       1  buzzingwires
       2  chrisrd
       1  grembo
       1  hedong zhang
       1  hping
       1  illiliti
       1  jokersus
       1  jumbi77
       1  naivekun
       1  ofthesun9
       1  omni
       1  Γ‰rico Nogueira
    
  • Module options - The default values for the module options were selected to yield good performance for the majority of workloads and configurations. They should not need to be tuned for most systems but are available for performance analysis and tuning. See the module parameters documentation for the complete list of the options and what they control.

    New module options
Read more

zfs-2.2.0-rc5

07 Oct 16:33
zfs-2.2.0-rc5
Compare
Choose a tag to compare
zfs-2.2.0-rc5 Pre-release
Pre-release

Supported Platforms

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

Changes

  • ZIL: Reduce maximum size of WR_COPIED to 7.5K #15353
  • rpm: Fix make rpm on Debian/Ubuntu #15355 #15365
  • import: require force when cachefile hostid doesn't match on-disk #15290
  • tests: add tests for zpool import behaviour when hostid changes #15290
  • zfsconcepts: add description of block cloning #15362
  • Reduce number of metaslab preload taskq threads. #15319
  • CI: add FreeBSD build with Cirrus CI #15332
  • tests/block_cloning: sync before write in fallback test #15359
  • ARC: Drop different size headers for crypto #15293 #15347
  • ARC: Remove b_bufcnt/b_ebufcnt from ARC headers #15350
  • ARC: Remove b_cv from struct l1arc_buf_hdr #15340
  • Add BTI landing pads to the AArch64 SHA2 assembly #14862 #15339
  • Add '-u' - nomount flag for zfs set #15322
  • Improve the handling of sharesmb,sharenfs properties #15240
  • Update the behavior of mountpoint property #15240
  • contrib: debian: drop bashcompletion mangling after install #15304 #15304
  • contrib: debian: switch to dh-sequence-dkms #15304
  • contrib: bash_completion.d: make install destination vendor dependent #15304
  • Fix invalid pointer access in trace_dbuf.h #15333
  • Report ashift of L2ARC devices in zdb #15331
  • Restrict short block cloning requests #15321
  • Tweak rebuild in-flight hard limit #15324
  • Fix ENOSPC for extended quota #15312
  • Don't allocate from new metaslabs #15307 #15308
  • Reduce trim min size even lower for tests to reduce flakiness #15315
  • ZTS: Fix introduced test bug in block_cloning_copyfilerange #15316
  • ZTS: Add additional exceptions #15306
  • Set timeout before creating pool in test #15309
  • Invoke zdb by guid to avoid import errors #15298
  • ZIL: Avoid dbuf_read() in ztest_get_data() #15301
  • tests/block_cloning: try harder to stay on same txg in fallback test #15303
  • status: report pool suspension state under failmode=continue #15297
  • Fix occasional rsend test crashes #15273
  • cmd: add 'help' subcommand to zpool and zfs #15288
  • Fix incorrect expected error in ztest #15295
  • Fix l2arc_apply_transforms ztest crash #15177 #15248
  • tests: install missing PAM tests #15291
  • ZIL: Fix potential race on flush deferring. #15278
  • Retire z_nr_znodes #15274
  • zed: Allow autoreplace and fault LEDs for removed vdevs #15281
  • check-zstd-symbols: also ignore _pfx symbols #15282 #15284
  • Remove implication that child disks aren't vdevs in zpoolconcepts(7) #15247
  • update max_variance limit in zdb_block_size_histogram test for CI #15252
  • Update the MOS directory on spa_upgrade_errlog() #15279 #15277
  • Linux 6.5 compat: META #15265
  • Linux 6.5 compat: spl: properly unregister sysctl entries #15239
  • Linux 6.5 compat: safe cleanup in spl_proc_fini() #15234 #15235
  • Linux 6.5 compat: Use copy_splice_read instead of filemap_splice_read #15164
  • Linux 6.5 compat: replace generic_file_splice_read with filemap_splice_read #15155
  • Linux 6.5 compat: register_sysctl_table removed #15138
  • Revert "Linux 6.5 compat: register_sysctl_table removed" #15134
  • Linux 4.20 compat: wrapper function for iov_iter type access #15100
  • Linux 6.4 compat: iter_iov() function now used to get old iov member #15100
  • Linux 6.5 compat: blkdev changes #15099
  • Linux 6.5 compat: use disk_check_media_change when it exists #15101
  • Linux 6.5 compat: register_sysctl_table removed #15098
  • Add more constraints for block cloning. #15251

zfs-2.1.13

28 Sep 00:52
zfs-2.1.13
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • check-zstd-symbols: also ignore _pfx symbols #15282 #15284
  • Cleanup: Replace oldstyle struct hack with C99 flexible array members #14372
  • Linux 6.5 compat: META (#15265)
  • checkstyle: fix action failures #15220
  • zed: update zed.d/statechange-slot_off.sh #15210
  • zed: Add zedlet to power off slot when drive is faulted #15200
  • intptr_t definition is canonically signed #15058
  • Linux 6.5 compat: spl: properly unregister sysctl entries #15239
  • Linux 6.5 compat: safe cleanup in spl_proc_fini() #15234 #15235
  • Linux 6.5 compat: Use copy_splice_read instead of filemap_splice_read #15164
  • Linux 6.5 compat: replace generic_file_splice_read with filemap_splice_read #15155
  • Linux 6.5 compat: register_sysctl_table removed #15138
  • Revert "Linux 6.5 compat: register_sysctl_table removed" #15134
  • Linux 4.20 compat: wrapper function for iov_iter type access #15100
  • Linux 6.4 compat: iter_iov() function now used to get old iov member #15100
  • Linux 6.5 compat: blkdev changes #15099
  • Linux 6.5 compat: use disk_check_media_change when it exists #15101
  • Linux 6.5 compat: register_sysctl_table removed #15098
  • Linux 6.5 compat: disk_check_media_change() was added #15060
  • Linux 6.5 compat: BLK_STS_NEXUS renamed to BLK_STS_RESV_CONFLICT #15059
  • Linux: Never sleep in kmem_cache_alloc(..., KM_NOSLEEP) (#14926)
  • quick fix for lingering snapdir unmount problems #14462
  • Workaround issue cleaning up automounted snapshots on Linux #11632 #12670
  • Linux 6.4 compat: META #15125
  • zed: Reduce log noise for large JBODs #15086 #15094
  • zed: Fix zed ASSERT on slot power cycle #15084
  • Fix raw receive with different indirect block size. #15039
  • Fix remount when setting multiple properties. #15000
  • Shorten arcstat_quiescence sleep time
  • Store the L2ARC device ashift in the vdev label #14313 #14963
  • Fix the L2ARC write size calculating logic (2) #14936 #14954
  • Fix the L2ARC write size calculating logic #14939
  • Remove duplicate code in l2arc_evict() #14828
  • Fix memory leak in zil_parse().
  • contrib/bash_completion.d: fix error spew from __zfs_match_snapshot() #12820
  • tests: zts-report: issue numbers are numbers #13259
  • zfs-dkms rpm: simplify scriptlets, fix uninstall #10463 #13182

zfs-2.2.0-rc4

07 Sep 23:39
zfs-2.2.0-rc4
Compare
Choose a tag to compare
zfs-2.2.0-rc4 Pre-release
Pre-release

Supported Platforms

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

Changes

  • Intel QAT 1.7 compatibility #15190
  • Relax error reporting in zpool import and zpool split #15216
  • ZIL: Change ZIOs issue order. #15233
  • ZIL: Revert zl_lock scope reduction. #15228
  • ZIL: Tune some assertions. #15227
  • dmu_buf_will_clone: change assertion to fix 32-bit compiler warning #15224
  • checkstyle: fix action failures #15220
  • Try to clarify wording to reduce zpool add incidents #15179
  • Avoid save/restoring AMX registers to avoid a SPR erratum #14989 #15168
  • zed: update zed.d/statechange-slot_off.sh #15210
  • Make zoned/jailed zfsprops(7) make more sense. #15161
  • tests/block_cloning: rename and document get_same_blocks helper #15181
  • Update outdated assertion from zio_write_compress #15180
  • zed: Add zedlet to power off slot when drive is faulted #15200
  • copy_file_range: fix fallback when source create on same txg #15170 #15172
  • Move zinject from openzfs-zfs-test to openzfs-zfsutils #15160
  • dracut: support mountpoint=legacy for root dataset #15149
  • zfs_clone_range should return a descriptive error codes #15148
  • libzfs: sendrecv: send_progress_thread: handle SIGINFO/SIGUSR1 #15113
  • linux/spl/kmem_cache: undefine kmem_cache_alloc before defining it #15144
  • Fix some typos #15141
  • ZIL: Second attempt to reduce scope of zl_issuer_lock. #15122
  • ZIL: Replay blocks without next block pointer. #15132
  • ZIL: Avoid dbuf_read() before dmu_sync(). #15153
  • Remove fastwrite mechanism. #15107
  • Avoid waiting in dmu_sync_late_arrival(). #15096
  • zpool_vdev_remove() should handle EALREADY error return #15013 #15129
  • linux: zfs: ctldir: set [amc]time to snapshot's creation property #15110 #15117
  • readmmap.c: fix building with MUSL libc #15130
  • Check the return value in clonefile test #15128
  • linux/copy_file_range: properly request a fallback copy on Linux <5.3 #15131
  • zdb: include cloned blocks in block statistics #15123