Skip to content

Releases: openzfs/zfs

zfs-2.1.10

14 Apr 22:07
zfs-2.1.10
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • Removed Python 2 and Python 3.5- support #12925
  • linux 6.3 compat: needs REQ_PREFLUSH | REQ_OP_WRITE #14695
  • Fix "Add colored output to zfs list" #14712
  • ZTS: Log test name to /dev/kmsg on Linux #13227
  • Add Linux kmemleak support to ZTS #13084
  • Linux 6.2 compat: META #14689
  • Fix console progress reporting for recursive send #14448
  • zfs_main.c: fix unused variable error with GCC #14441
  • Use setproctitle to report progress of zfs send #14376
  • Additional limits on hole reporting #14512 #14641
  • Add colored output to zfs list #14621 #14350
  • Colorize zpool iostat output #14621 #14459
  • Add more ANSI colors to libzfs #14621
  • linux 6.3 compat: add another bdev_io_acct case #14658 #14668
  • Update vdev state for spare vdev #14653
  • zed: add hotplug support for spare vdevs #14295
  • zed: post a udev change event from spa_vdev_attach() #14172
  • zed: mark disks as REMOVED when they are removed
  • FreeBSD: Remove extra arc_reduce_target_size() call #14639
  • Improve arc_read() error reporting
  • QAT: Fix uninitialized seed in QAT compression #14632 #14463
  • Fix for mountpoint=legacy #14599 #14604
  • ZFS_IOC_COUNT_FILLED does unnecessary txg_wait_synced() #13368
  • Update workflows
  • Workaround GitHub Action failure #14530
  • Ubuntu 22.04 integration: GitHub workflows #14148
  • initramfs: fix zpool get argument order #14572
  • Turn default_bs and default_ibs into ZFS_MODULE_PARAMs #14293
  • Add missing increment to dsl_deadlist_move_bpobj() #14573
  • Optimize the is_l2cacheable functions #14494 #14563
  • System-wide speculative prefetch limit. #14516
  • Prefetch on deadlists merge #14402
  • Introduce minimal ZIL block commit delay #14418
  • Pack zrlock_t by 8 bytes #14317
  • Remove few pointer dereferences in dbuf_read() #14199
  • Switch dnode stats to wmsums #14198
  • Micro-optimize zrl_remove() #14200
  • Remove atomics from zh_refcount #14196
  • Optimize microzaps #14039
  • autoconf: add support for openEuler #14241
  • Set DEFAULT_INIT_SHELL to /sbin/openrc-run for Gentoo and Alpine #12683 #12692
  • rpm: add support for openEuler #14222
  • Revert zfeature_active() to static
  • Move dmu_buf_rele() after dsl_dataset_sync_done() #14522 #14523
  • Partially revert eee9362 #14502
  • Fix a race condition in dsl_dataset_sync() when activating features #13816
  • initramfs: Make mountpoint=none work #14455
  • Avoid a null pointer dereference in zfs_mount() on FreeBSD #14218
  • Allow mounting snapshots in .zfs/snapshot as a regular user #13758

zfs-2.1.9

25 Jan 22:20
zfs-2.1.9
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • linux 6.2 compat: zpl_set_acl arg2 is now struct dentry
  • Revert "ztest fails assertion in zio_write_gang_member_ready()" #14413

zfs-2.1.8

20 Jan 22:10
zfs-2.1.8
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • change how d_alias is replaced by du.d_alias #14377
  • Linux ppc64le ieee128 compat: Do not redefine __asm on external headers #14308 #14384
  • include systemd overrides to zfs-dracut module #14075 #14076
  • Activate filesystem features only in syncing context #14304 #14252
  • Illumos #15286: do_composition() needs sign awareness #14318 #14342
  • dracut: fix typo in mount-zfs.sh.in #13602
  • removal of LegacyVersion broke ax_python_dev.m4 #14297
  • FreeBSD: catch up to 1400077 #14328
  • Fix shebang for helper script of deb-utils #14339
  • Add quotation marks around $PATH for deb-utils #14339
  • Documentation corrections #14298 #14307
  • systemd: set restart=always for zfs-zed.service #14294
  • Add color output to zfs diff.
  • libzfs: diff: simplify superfluous stdio #12829
  • libzfs: diff: print_what() can return the symbol => get_what() #12829
  • FreeBSD: Remove stray debug printf #14286 #14287
  • Zero end of embedded block buffer in dump_write_embedded() #13778 #14255
  • Change ZEVENT_POOL_GUID to ZEVENT_POOL to display pool names #14272
  • Restrict visibility of per-dataset kstats inside FreeBSD jails #14254
  • Fix dereference after null check in enqueue_range #14264
  • Fix potential buffer overflow in zpool command #14264
  • FreeBSD: zfs_register_callbacks() must implement error check correctly #14261
  • fgrep -> grep -F #13259
  • egrep -> grep -E #13259
  • Update META to 6.1 kernel #14371
  • ztest fails assertion in zio_write_gang_member_ready() #14250 #14356
  • Introduce ZFS_LINUX_REQUIRE_API autoconf macro #14343
  • linux 6.2 compat: bio->bi_rw was renamed bio->bi_opf #14324 #14331
  • linux 6.2 compat: get_acl() got moved to get_inode_acl() in 6.2 #14323 #14331
  • Linux 6.1 compat: open inside tmpfile() #14301 #14343
  • ZTS: close in mmapwrite.c #14353
  • ZTS: limit mmapwrite file size #14277 #14345
  • skip permission checks for extended attributes
  • Allow receiver to override encryption properties in case of replication
  • zed: unclean disk attachment faults the vdev
  • FreeBSD: Fix potential boot panic with bad label #14291
  • Add workaround for broken Linux pipes #13309
  • initramfs: Fix legacy mountpoint rootfs #14274
  • vdev_raidz_math_aarch64_neonx2.c: suppress diagnostic only for GCC
  • tests: mkfile: usage: () -> (void)
  • Use Ubuntu 20.04 and remove Ubuntu 18.04 from workflows #14238
  • dracut: skip zfsexpandknoweldge when zfs_devs is present in dracut #13121

zfs-2.1.7

02 Dec 02:03
zfs-2.1.7
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • zfs-2.1.7: Use ubuntu-20.04 for zloop and sanity builders
  • Fix setting the large_block feature after receiving a snapshot #13699 #13782
  • Make autodetection disable pyzfs for kernel/srpm configurations #13394 #14178
  • Don't leak packed recieved proprties #14197
  • Fix NULL pointer dereference in dbuf_prefetch_indirect_done() #14210
  • Lua: Fix bad bitshift in lua_strx2number() #14204
  • Fix clang 13 compilation errors #13551
  • Remove final K&R definitions #13447
  • module: zfs: vdev_removal: remove unused num_indirect #13304
  • tests: cmd: draid: remove unused and undocumented -v #13304
  • linux: libspl: zone: () -> (void) #12968
  • Correct multipathd.target to .service #12709 #14171
  • Handle and detect #13709's unlock regression (#14161)
  • Fix arc_p aggressive increase #14137 #14120
  • FreeBSD: Fix out of bounds read in zfs_ioctl_ozfs_to_legacy() #14135
  • Expose zfs_vdev_open_timeout_ms as a tunable #14133
  • Remove an unused variable #14125
  • Make 1-bit bitfields unsigned #14125
  • Address warnings about possible division by zero from clangsa #14124
  • Avoid null pointer dereference in dsl_fs_ss_limit_check() #14103
  • Fix too few arguments to formatting function #14098
  • Remove zpl_revalidate: fix snapshot rollback #9600 #14070
  • Fix theoretical use of uninitialized values #14043
  • Fix memory leaks in dmu_send()/dmu_send_obj() #13973
  • Fix possible NULL pointer dereference in sha2_mac_init() #14044
  • set_global_var() should not pass NULL pointers to dlclose() #14044
  • Fix NULL pointer dereference in spa_open_common() #14044
  • Fix NULL pointer passed to strlcpy from zap_lookup_impl() #14044
  • fm_fmri_hc_create() must call va_end() before returning #14044
  • Fix NULL pointer dereference in zdb #14044
  • ZED: Fix uninitialized value reads #14047
  • Fix theoretical array overflow in lua_typename() #13947
  • Fix potential NULL pointer dereference in lzc_ioctl() #14008
  • scripts/enum-extract.pl should not hard code perl path #14012
  • PAM: Fix unchecked return value from zfs_key_config_load() #13978
  • Fix potential NULL pointer dereference in dsl_dataset_promote_check() #13967
  • Fix unreachable code in zstreamdump #13946
  • PAM: Fix uninitialized value read #13957
  • set_global_var_parse_kv() should pass the pointer from strdup() #13867
  • Call va_end() before return in zpool_standard_error_fmt() #13904
  • Fix potential NULL pointer dereference in zfsdle_vdev_online() #13903
  • FreeBSD: Fix uninitialized pointer read in spa_import_rootpool() #13923
  • Linux: Fix use-after-free in zfsvfs_create() #13883
  • Fix null pointer dereferences in PAM #13889
  • Handle ECKSUM as new EZFS_CKSUM ‒ "insufficient replicas" #6805 #13808 #13898
  • Fix use-after-free bugs in icp code #13881
  • Remove incorrect free() in zfs_get_pci_slots_sys_path() #13864
  • Cleanup: Make memory barrier definitions consistent across kernels #13843
  • zpool_load_compat() should create strings of length ZFS_MAXPROPLEN #13866
  • icp: fix all !ENDBR objtool warnings in x86 Asm code #14035
  • icp: fix rodata being marked as text in x86 Asm code #14035
  • icp: properly fix all RETs in x86_64 Asm code #14035
  • libzfs recv: Check if user prop before inheritable
  • dsl_prop_known_index(): check for invalid prop #14142 #14147
  • zed: Avoid core dump if wholedisk property does not exist #14062
  • zed: Prevent special vdev to be replaced by hot spare #14129
  • Deny receiving into encrypted datasets if the keys are not loaded (#14139) #13598 #14055 #14119
  • zil: Relax assertion in zil_parse #14116
  • quota: extend quota for dataset #13839
  • Fix ARC target collapse when zfs_arc_meta_limit_percent=100 #14054 #14093
  • Propagate extent_bytes change to autotrim thread #14077
  • Linux 6.1 compat: change order of sys/mutex.h includes #14040
  • Linux 6.0 compat: META #14091
  • Linux compat: fix DECLARE_EVENT_CLASS() test when ZFS is built-in #14006
  • zfs_domount: fix double-disown of dataset / double-free of zfsvfs_t #14025
  • Linux: Remove ZFS_AC_KERNEL_SRC_MODULE_PARAM_CALL_CONST autotools check #13984 #14004
  • CI: bump actions/upload-artifact to v3 #14018
  • CI: bump actions/checkout to v3 #14018
  • Stop ganging due to past vdev write errors #14003
  • zvol_wait logic may terminate prematurely #13998
  • Remove ambiguity on demand vs prefetch stats reported by arc_summary #13985
  • Fix panic in dsl_process_sub_livelist for EINTR #13939
  • Bring per_txg_dirty_frees_percent back to 30 #13932 #13938
  • Add options to zfs redundant_metadata property #13680
  • FreeBSD: vn_flush_cached_data: observe vnode locking contract #14079
  • FreeBSD: Fix a pair of bugs in zfs_fhtovp() #14001 #13974
  • Fix sequential resilver drive failure race condition #14041 #14050
  • contrib: dracut: zfs-snapshot-bootfs: exit status fix
  • contrib: dracut: zfs-{rollback,snapshot}-bootfs: explicit snapname fix #13585
  • kcfpool_alloc() should have its argument list marked void #14023
  • etc: mask zfs-load-key.service #14010 #14019
  • initramfs: use mount.zfs instead of mount #13305

zfs-2.1.6

03 Oct 22:58
zfs-2.1.6
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • Fix bad free in skein code #13954
  • zpool: Don't print "repairing" on force faulted drives #13927 #13930
  • FreeBSD: handle V_PCATCH #13910
  • FreeBSD: catch up to 1400068 #13909
  • FreeBSD: stop passing LK_INTERLOCK to VOP_LOCK #13908
  • FreeBSD: Fix integer conversion for vnlru_free{,_vfsops}() #13882
  • FreeBSD: Ignore symlink to i386 includes #13719
  • LUA: Fix CVE-2014-5461 #13949
  • Linux: Fix uninitialized variable usage in zio_do_crypt_data() #13944
  • Refactor Log Size Limit #13476
  • Revert "Reduce dbuf_find() lock contention"
  • Add zfs_btree_verify_intensity kernel module parameter #13874
  • Fix incorrect size given to bqueue_enqueue() call in dmu_redact.c #13885
  • Delay ZFS_PROP_SHARESMB property to handle it for encrypted raw receive #13878
  • zfs recv hangs if max recordsize is less than received recordsize #13855
  • include: move SPA_MINBLOCKSHIFT and zio_encrypt to sys/fs/zfs.h #12116
  • Improve too large physical ashift handling #13798
  • Ask libtool to stop hiding some errors #13086
  • Add Module Parameter Regarding Log Size Limit #12284
  • Optimize txg_kick() process (#12274) #12274
  • zfs recv hangs if max recordsize is less than received recordsize #13855
  • make DMU_OT_IS_METADATA and DMU_OT_IS_ENCRYPTED return B_TRUE or B_FALSE #13842
  • vdev_draid_lookup_map() should not iterate outside draid_maps #13865
  • Add physical device size to SIZE column in 'zpool list -v' #12561 #13106
  • Introduce a tunable to exclude special class buffers from L2ARC #11761 #12285
  • config: check for parallel(1), use it for cstyle
  • zed: Fix config_sync autoexpand flood #13729
  • Add xattr_handler support for Android kernels #13824
  • Fix column width in 'zpool iostat -v' and 'zpool list -v' #13811
  • FreeBSD: Mark ZFS_MODULE_PARAM_CALL as MPSAFE #13756
  • Apply arc_shrink_shift to ARC above arc_c_min #13794
  • Importing from cachefile can trip assertion #13781
  • ZTS: Fix zpool_expand_001_pos #13743
  • zed: Look for NVMe DEVPATH if no ID_BUS #13512 #13646
  • zed: Ignore false 'atari' partitions in autoreplace #13497 #13632
  • rpm: Silence "unversioned Obsoletes" warnings on EL 9 #13584 #13638
  • rpm: Use the correct version-release information in dependencies #13489
  • Fix use-after-free in btree code #10989 #13861
  • contrib: dracut: zfs-snapshot-bootfs: exit status fix #13769
  • arcstat: fix -p option #12916 #13767
  • Fix problem with zdb_objset_id test.
  • Linux 6.0 compat: register_shrinker() now var-arg #13748
  • Linux 5.20 compat: blk_cleanup_disk() #13728
  • Linux 5.20 compat: bdevname() #13728
  • Linux 5.19 compat: META #13715
  • Fix problem with zdb -d #12845 #12944
  • Fix checkstyle warning: E275 missing whitespace after keyword #13710
  • Revert behavior of 59eab10 on not-Linux #12698
  • Handle partial reads in zfs_read #12370 #12509 #12516
  • module: lua: ldo: fix pragma name #13348
  • ZTS: Fix io_uring support check #13648 #13685
  • Fix objtool: missing int3 after ret warning #13528 #13575
  • ICP: Add missing stack frame info to SHA asm files #11733
  • Fix -Wformat-overflow warning in zfs_project_handle_dir() #13528 #13575
  • Fix -Wformat-truncation warning in upgrade_set_callback() #13528 #13575
  • Fix -Wuse-after-free warning in dbuf_destroy() #13528 #13575
  • Fix -Wuse-after-free warning in dbuf_issue_final_prefetch_done() #13528 #13575
  • Fix -Wattribute-warning in dsl layer #13528 #13575
  • Fix -Wattribute-warning in edonr #13528 #13575
  • Fix -Wattribute-warning in zfs_log_xvattr() #13528 #13575
  • Silence -Winfinite-recursion warning in luaD_throw() #13528 #13575
  • config: prune unused -Wno-bool-compare checks #13110
  • libtpool: -Wno-clobbered #13110
  • Remove sha1 hashing from OpenZFS, it's not used anywhere. #12895 #12902
  • Fix scrub resume from newly created hole.
  • Avoid memory copy when verifying raidz/draid parity #13613
  • Avoid memory copies during mirror scrub #13606
  • Fix and disable blocks statistics during scrub #13579
  • Avoid two 64-bit divisions per scanned block #13591
  • Several B-tree optimizations #13582
  • Several sorted scrub optimizations #13576
  • FreeBSD: Improve crypto_dispatch() handling #13563
  • Reduce ZIO io_lock contention on sorted scrub #13553
  • AVL: Remove obsolete branching optimizations #13540
  • More speculative prefetcher improvements #13452
  • Improve mg_aliquot math #13388
  • Improve log spacemap load time #12789
  • Add more control/visibility to spa_load_verify(). #13022
  • spa.c: Replace VERIFY(nvlist_(...) == 0) with fnvlist_ (#12678)
  • Avoid small buffer copying on write #12425
  • Remove refcount from spa_config_*() #12287
  • Scrub mirror children without BPs #13555

zfs-2.1.5

22 Jun 20:11
zfs-2.1.5
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • Remove install of zfs-load-module.service for dracut #13574
  • FreeBSD: Silence clang unused-but-set-variable
  • Improve sorted scan memory accounting #13537
  • Corrected edge case in uncompressed ARC->L2ARC handling #13375
  • Remove wrong assertion in log spacemap #13486 #13513
  • libzfs: Fail making a dataset handle gracefully #13077
  • libzfs: mount: don't leak mnt_param_t if mnt_func fails #12968
  • Reject zfs send -RI with nonexistent fromsnap #12574 #12575
  • Linux 5.18 compat: META #13527
  • autoconf: AC_MSG_CHECKING consistency #13529
  • Linux 5.19 compat: asm/fpu/internal.h #13529
  • Linux 5.19 compat: zap_flags_t conflict #13515
  • Linux 5.19 compat: bdev_start_io_acct() / bdev_end_io_acct() #13515
  • Linux 5.19 compat: aops->read_folio() #13515
  • Linux 5.19 compat: blkdev_issue_secure_erase() #13515
  • Linux 5.19 compat: bdev_max_secure_erase_sectors() #13515
  • Linux 5.19 compat: bdev_max_discard_sectors() #13515
  • Linux 5.18 compat: bio_alloc() #13515
  • Silence unused-but-set-variable warning #13507
  • zed: support subject as header in zed_notify_email() #13440
  • rpm: Keep debug symbols if configured with '--enable-debuginfo' #13500
  • FreeBSD: libspl: Add locking around statfs globals #13484
  • Standardize RHEL version check in packages #13501
  • Modified ncompress requirement in RPM to exclude RHEL9 #13480 #13490
  • zed: Take no action on scrub/resilver checksum errors #13499
  • zdb: Fix handling of nul termination in symlink targets #13482
  • automake: don't install /e/d/zfs or /e/z/zfs-functions +x #13496
  • Multiple dracut module install script cleanups #13010
  • Remove absolute paths to udev rules and binaries for dracut #13010
  • Make dracut fail if essential files cannot be installed #13010
  • Make better use of dracut functions when building initramfs #13010
  • Fix compiler warnings about zero-length arrays in inline bitops #13463 #13465
  • Add missing AC_MSG_RESULT(no) to configure #13454
  • abd_os: remove redundant refcount creation for abd_children #13429
  • Fix functions without a prototype #13421
  • FreeBSD: use zero_region instead of allocating a dedicated page #13406
  • autoconf: Fail when __copy_from_user_inatomic is a non-GPL symbol #13389
  • PPC get_user workaround #11958 #12590 #13367
  • Adding ZERO_PAGE detection #13199
  • autoconf: Pretend CONFIG_MODULES is always on
  • kbuild: unify modules(_install) for in-tree and external modules #10832 #13361
  • Strengthen Linux kernel capabilities detection #13351
  • zvol_wait: Ignore locked zvols #10662
  • FreeBSD: Implement hole-punching support #12458
  • module: zstd: check we don't leak symbols; regenerate symbol map #12988 #13209
  • man: zpool-import.8: -d -or -c #13437
  • Reduce dbuf_find() lock contention #13405
  • contrib: dracut: remove getargbool polyfill #13291
  • Add dracut.zfs.7 #13291
  • contrib: dracut: zfs-needshutdown: don't list #13291
  • contrib: dracut: zfs-{rollback,snapshot}-bootfs: order after key loading #13291
  • contrib: dracut: don't require essentials to be under the same encroot #13291
  • contrib: dracut: inline single-use import_pool, move single-use ask_for_password #13291
  • contrib: dracut: zfs-lib: remove find_bootfs #13291
  • contrib: dracut: zfs-lib: simplify ask_for_password #13291
  • contrib; dracut: flatten zfs-load-key, simplify zfs-env-bootfs #13291
  • contrib; dracut: centralise root= parsing, actually support root=s #13291
  • contrib: dracut: parse-zfs: stop pretending we support FILESYSTEM= #13291
  • contrib: dracut: parse-zfs: drop initqueue-finished for i/f #13291
  • contrib/dracut: zfs-lib: export_all: replace with inline zpool export -a #13093
  • Remove REMAKE_INITRD #12781
  • Python 3.10 fixes, part 2 #12045 #12673
  • Silence unused-but-set-variable warnings
  • module: zfs: freebsd: fix unused, remove argsused #12844
  • FreeBSD: remove unused variable
  • zvol: remove unused variable #12917
  • fm: remove unused variables #12917
  • zvol: remove unused variable #12917
  • module/zfs: vdev_removal: spa_vdev_remove_thread: remove unused variable #12187
  • module/zfs: vdev_indirect: vdev_indirect_repair: remove unused variable #12187
  • module/zfs: dbuf: dbuf_read_impl: remove unused variable #12187
  • module/zfs: arc: arc_hdr_realloc_crypt: remove unused variables #12187
  • libzfs: zfs_send: remove unused variable #12187
  • libzutil: zpool_find_config: remove unused variable #12187
  • Skip spacemaps reading in case of pool readonly import #9095 #12687
  • zfs: holds: dequadratify #13372 #13373
  • Linux 5.18 compat: replace __set_page_dirty_nobuffers #13325 #13380
  • Fix O_APPEND for Linux 3.15 and older kernels #13370 #13377
  • Linux 5.18 compat: kobj_type.default_attrs replaced with default_groups #13357
  • FreeBSD: Fix translation from ABD to physical pages.
  • Corrected oversight in ZERO_RANGE behavior #13329 #13338
  • Document zfs inherit -S's interaction with noninheritable properties #11894 #13335
  • Linux 5.17 compat: GENHD_FL_EXT_DEVT / GENHD_FL_NO_PART_SCAN #13294 #13297
  • FreeBSD: Return Mach error codes from VOP_(GET|PUT)PAGES #13311
  • FreeBSD: Parameterize ZFS_ENTER/ZFS_VERIFY_VP with an error code #13311
  • libzfs: import: zpool_clear_label: actually fail if clearing l2arc header fails #13304
  • libzfs: sendrecv: always cancel progress thread in zfs_send_one() #11560 #13284
  • Linux 5.18 compat: use address_space_operations->readahead #13278
  • Linux 5.18 compat: blkg_tryget is moved to private headers #13278
  • Linux 5.18 compat: replace genhd.h with blkdev.h includes #13251
  • Linux 5.18 compat: 4-argument bio_alloc() #13251
  • FreeBSD: Use NDFREE_PNBUF if available #13277
  • Export minimal zfs_refcount interfaces #12613
  • Default to zfs_dmu_offset_next_sync=1 #12746
  • etc/systemd/zfs-mount-generator: serialise, handle keylocation=http[s]:// #12138
  • libzfs: diff: stream_bytes: use fputc, %hho formats chars #12829
  • zfs, libzfs: diff: accept -h/ZFS_DIFF_NO_MANGLE, disabling path escaping #12829

zfs-2.1.4

23 Mar 20:58
zfs-2.1.4
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • zed: Fix mpath autoreplace on Centos 7 #13222
  • zed: Misc multipath autoreplace fixes #13023
  • Fix ACL checks for NFS kernel server #13221
  • Linux 5.16 compat: restore FSR and FSAVE #13210 #13236
  • module: freebsd: avoid a taking a destroyed lock in zfs_zevent bits #13220
  • FreeBSD: add missing replay check to an assert in zfs_xvattr_set #13219
  • get_key_material_https: removed bogus free() call #13198
  • Fix module build with -Werror #13194 #13196

zfs-2.1.3

11 Mar 00:59
zfs-2.1.3
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • Fix ENOSPC when unlinking multiple files from full pool #13172
  • ZTS: deadman_sync fix #12625
  • zfs: Fix a deadlock between page busy and the teardown lock #12828
  • Really zero the zero page #12569
  • ZTS: Fix import_devices_missing.ksh #13169
  • ZTS: Retry in import_rewind_config_changed.ksh #13119
  • ZTS: Modify receive-o-x_props_override.ksh exception #13167
  • ZTS: Move largest_pool_001_pos.ksh to Linux runfile #13166
  • Fix erroneous zstreamdump warning #13154
  • Fix FreeBSD reporting on reruns #13156
  • Fix cpu hotplug atomic sleep issue #12714
  • Fix directory detection in dkms.mkconf #11449 #13141
  • Linux 5.11 compat: x86 SIMD: fix kernel_fpu_{begin,end}() detection #13147
  • Fix Linux kernel directories detection #9935 #13096
  • Enable encrypted raw sending to pools with greater ashift #13067 #13074
  • Avoid dirtying the final TXGs when exporting a pool #13048 #13098
  • zfs-receive.8: properly unlight = in option setting #13101
  • zfs-receive.8: fix Op Fl x Ar encryption in running text #13101
  • Remove unneeded "extern inline" function declarations #13073
  • module: zfs: fix unused, remove argsused #12844
  • ZTS: Fix checkpoint_ro_rewind.ksh #13092
  • ZTS: Fix zpool_expand_001_pos #13091
  • Fix gcc warning in kfpu_begin() #13089
  • zpool-import.8: WARNING should be emphasised #13082
  • zpool-import.8: newpool is Ar, not Sy #13082
  • zpoolprops.7: document leaked #13081
  • Correct a typo in zfs-receive.8 #13072
  • ZTS: Fix zvol_misc_volmode test #13075
  • Add dataset_kstats_update.. to mmap read/write paths #12994 #13044
  • Receive checks should allow unencrypted child datasets #13033 #13076
  • Propagate KERNEL_* to *.spec #13046
  • Add support for $KERNEL_{CC,LD,LLVM} variables #13046
  • module: Makefile: simplify clean and install jobs #12979
  • module: Makefile: flatten subdir loop, use $PWD instead of pwd
  • Linux 5.16 compat: don't use XSTATE_XSAVE to save FPU state #13042 #13059
  • mount.zfs -o zfsutil leverages zfs_mount_at() #13021
  • dsl_dir_tempreserve_impl: remove unused deferred variable
  • OpenZFS 9166 - zfs storage pool checkpoint #13056
  • libfetch: unquote @LIBFETCH_SONAME@ subst #12922
  • contrib/initrd hooks: properly quote @LIBFETCH_SONAME@ #12835
  • Remove basename(1). Clean up/shorten some coreutils pipelines #12652
  • autoconf: allow Release to contain hyphen #12437
  • ZTS: Update enospc_002_pos test case #13060
  • Fix clearing set-uid and set-gid bits on a file when replying a write #13027
  • Add enumerated vdev names to 'zpool iostat -v' and 'zpool list -v' #12510 #13031
  • Report dnodes with faulty bonuslen #12720 #13014
  • RPM: Add missing BuildRequires for PAM component #13001
  • Clarify failmode=wait documentation #12907 #9395
  • README: Update OpenZFS website url #12939
  • man: speling #12911
  • ZTS: Fix enospc_002_pos.ksh again #12903
  • ZTS: Fix rollback_003_pos.ksh #12898
  • Update zts-report.py with additional tests #10489
  • Exclude zvol_misc_volmode for now #12733
  • ZTS: Add known exceptions #12624
  • ZTS: Minimize udev_wait in zvol_misc tests #12583
  • ZTS: Enable punch-hole tests on FreeBSD #12458
  • ZTS: Fix refreserv_raidz.ksh #12897
  • zfs-test/mmap_seek: fix build on musl #12891
  • ZTS: speed up rsend tests #12876
  • ZTS: rsend_007_pos failures #5665 #6086 #6087 #6446 #12876
  • zfs-share.8: document -l flag #12067
  • contrib/initrd: systemd-ask-password --no-tty before argument #12870
  • dracut: 90zfs: zfs-load-key: wait for key to appear for up to 10 seconds #12065 #12108
  • libzfs: add keylocation=https://, backed by fetch(3) or libcurl #9947 #11956
  • ZTS: cli_root/zfs_load-key: add separate key files #11976
  • zfsprops.7: Add note about comma-separation #12579
  • Add explicit timeout to test step #12999
  • Workaround Debian's fake System.map behavior #12862
  • Proper support for DESTDIR and INSTALL_MOD_PATH #12577
  • ZTS: alloc_class.ksh must wait for the process to exit #12873
  • ZTS: Avoid piping send directly to /dev/null #12872
  • ZTS: Fix zpool_reopen_[1-5] on Fedora 35 #12871
  • systemd: add weekly and monthly scrub timers #12193
  • Add init script to load keys #11659 #11662
  • Notify on UNAVAIL statechange #12629 #12630
  • Upstream: Add snapshot and zvol events #12416
  • zed: Add Pushover notifier #12012
  • zed-functions.sh: escape newline to produce valid json #13049
  • zed: send notification email by default #12806
  • Introduce a flag to skip comparing the local mac when raw sending #12981 #10523 #11221 #11294 #12594
  • Linux <4.8 compat: submit_bio() rw arg #13006
  • Linux 5.17 compat: PDE_DATA() renamed to pde_data() #13004 #12989
  • Linux 5.17 compat: dequeue_signal() takes a 4th argument #12989
  • Linux 5.17 compat: detect complete_and_exit() rename #12989
  • Add support for FALLOC_FL_ZERO_RANGE #12975
  • Linux 5.16 compat: Added mapping for iov_iter_fault_in_readable #12975
  • Linux 5.16 compat: Added add_disk check for return #12975
  • Linux 5.16 compat: Check slab.h for kvmalloc #12975
  • Fix handling of errors from dmu_write_uio_dbuf() on FreeBSD #12964
  • Avoid memory allocations in the ARC eviction thread #12985
  • libzfs_sendrecv: Fix leaked holds nvlist #12967
  • libzfs_sendrecv: Avoid extra avl_find #12967
  • FreeBSD: Fix zvol_cdev_open locking #13016
  • FreeBSD: Fix zvol_*_open() locking #12934
  • FreeBSD: Fix leaked strings in libspl mnttab #12961
  • linux: libzfs: mount: fix uninitialised flags #12954
  • FreeBSD: vfsops: use setgen for error case #12905
  • zfs_prune: reset sc.nr_to_scan #12908
  • Verify dRAID empty sectors #12857
  • FreeBSD: fix unpropagated error #12904
  • FreeBSD: fix world build after 143476c #12880
  • Fix error propagation from lzc_send_redacted #12766
  • freebsd/libshare: nfs: don't send SIGHUP to all processes #12067
  • Fix zvol_open() lock inversion #12863
  • FreeBSD: Update argument types for VOP_READDIR #12874
  • Reduce number of arc_prune threads #12896
  • FreeBSD: Provide correct file generation number #12851

zfs-2.0.7

23 Dec 22:01
zfs-2.0.7
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • Fix zvol_open() lock inversion #12863
  • FreeBSD: Add vop_standard_writecount_nomsync #12828
  • FreeBSD: Catch up with more VFS changes #12828
  • Remove (now unused) td argument from zfs_lookup() #12748
  • FreeBSD: Implement xattr=sa #11997
  • Fix several bugs in the FreeBSD rename VOP implementation #12717
  • Exit the teardown section later in rename on FreeBSD #12704
  • Fix potential use-after-frees in FreeBSD getpages and setattr VOPs #12704
  • ZTS: import_rewind_device_replaced reliably fails #12821
  • Linux 5.15 compat: META #12824
  • ZFS send/recv with ashift 9->12 leads to data corruption #12770
  • Linux 5.16: Resolve ZSTD_isError symbol collision in Linux kernel #12819
  • Linux 5.16: The blk-cgroup.h header is where struct blkcg_gq is defined #12819
  • Linux 5.16: bio_set_dev is no longer a helper macro #12819
  • Linux 5.16: type member of iov_iter renamed iter_type #12819
  • Linux 5.16: block_device_operations->submit_bio now returns void #12819
  • Linux 5.16 compat: asm/fpu/xcr.h is new location for xgetbv/xsetbv #12800
  • FreeBSD: avoid memory allocation in arc_prune_async #12049
  • tests/file_check: remove unused variable #12187
  • Strip colons from all test result filenames #12815
  • Linux 5.13 compat: retry zvol_open() when contended #12759
  • Temporarily remove tests from sanity runfile #12814
  • Add zfs-test facility to automatically rerun failing tests #12740
  • Linux 5.16: wait_on_page_bit() no longer available to modules #12800
  • Iterate encrypted clones at zvol_create_minor #12471
  • Update ABIs for zfs-2.0.7
  • libefi: remove efi_auto_sense() #12191
  • libefi: efi_get_devname: don't allocate procfs path #12048
  • cppcheck: resolve double free #11508
  • Restore dirty dnode detection logic #11900 #12745
  • Fix lseek(SEEK_DATA/SEEK_HOLE) mmap consistency #12724
  • zed: Control NVMe fault LEDs #12648 #12695
  • Linux 5.16 compat: submit_bio() #12725
  • Linux 5.16 compat: linux/elevator.h #12725
  • zed.d/pool_import-led.sh: fix for current zpool scripts #11934 #11935
  • Revert behavior of 59eab10 on not-Linux #12698
  • Handle partial reads in zfs_read #12370 #12509 #12516
  • Cleaning up uio headers #11622
  • Extending FreeBSD UIO Struct #11438
  • FreeBSD: Move uio_prefaultpages def to uio.h #11176
  • Remove UIO_ZEROCOPY functions structures #11124
  • FreeBSD: Catch up with recent VFS changes #12668
  • vdev_id: Fix PHY sorting #12699
  • vdev_id: Fix enclosure_symlinks feature #12660
  • Rescan enclosure sysfs path on import #11950 #12095
  • vdev_id: Return an error if config file is not found (#12508)
  • vdev_id.conf.5: modernise #12125
  • vdev_id.8: modernise, note scsi topology #12125
  • zfs_get_enclosure_sysfs_path(): don't free undefined pointer #11993
  • zfs_get_enclosure_sysfs_path(): don't leak dev path #11993
  • vdev_id: variable not getting expanded under map_slot() #11951 #11959
  • vdev_id: Create symlinks even if no /dev/mapper/ #11698
  • vdev_id: Fix partition regular expression #11637
  • Better zfs_get_enclosure_sysfs_path() enclosure support #11617
  • vdev_id: Support daisy-chained JBODs in multipath mode #11526
  • Added error for writing to /dev/ on Linux
  • ZTS: Add known exceptions #12272
  • ZTS: Standardize use of destroy_dataset in cleanup #12663
  • Update checkstyle workflow env to ubuntu-20.04 #12713
  • Workaround cloud-init hotplug issue #12644 #12669
  • CI: don't install abigail-tools #12529
  • CI: use fresh libabigail via docker image #12529
  • Update libera webchat client URL #12251
  • Don't direct to freenode in issue template #12127
  • gcc 11 cleanup #12130 #12188 #12237
  • Use fallthrough macro #12441
  • Correct a flaw in the Python 3 version checking
  • Let zfs diff be more permissive #12072
  • Added test for being able to read various variants of zstd #12030
  • zed: only go up to current limit in close_from() fallback #11834
  • zed: implement close_from() in terms of /proc/self/fd, if available #11834
  • Fix cross-endian interoperability of zstd #12008 #12022
  • CI: generate ABI files if changed #12379
  • Update bug report template
  • Update libera webchat client URL #12251
  • Don't direct to freenode in issue template #12127

zfs-2.1.2

16 Dec 00:29
zfs-2.1.2
Compare
Choose a tag to compare

Supported Platforms

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

Changes

  • zfs-dkms rpm: Fix scriptlets dependencies #12822 #12832
  • FreeBSD: Add vop_standard_writecount_nomsync #12828
  • FreeBSD: Catch up with more VFS changes #12828
  • Fix several bugs in the FreeBSD rename VOP implementation #12717
  • Remove (now unused) td argument from zfs_lookup() #12748
  • Exit the teardown section later in rename on FreeBSD #12704
  • Fix potential use-after-frees in FreeBSD getpages and setattr VOPs #12704
  • ZTS: import_rewind_device_replaced reliably fails #12821
  • Update checkstyle workflow env to ubuntu-20.04 #12713
  • Linux 5.15 compat: META (#12824)
  • ZFS send/recv with ashift 9->12 leads to data corruption #12770
  • Linux 5.16: Resolve ZSTD_isError symbol collision in Linux kernel #12819
  • Linux 5.16: The blk-cgroup.h header is where struct blkcg_gq is defined #12819
  • Linux 5.16: bio_set_dev is no longer a helper macro #12819
  • Linux 5.16: type member of iov_iter renamed iter_type #12819
  • Linux 5.16: block_device_operations->submit_bio now returns void #12819
  • Linux 5.16 compat: asm/fpu/xcr.h is new location for xgetbv/xsetbv #12800
  • tests/file_check: remove unused variable #12187
  • Strip colons from all test result filenames #12815
  • Linux 5.13 compat: retry zvol_open() when contended #12759
  • Temporarily remove tests from sanity runfile #12814
  • Add zfs-test facility to automatically rerun failing tests #12740
  • Linux 5.16: wait_on_page_bit() no longer available to modules #12800
  • Iterate encrypted clones at zvol_create_minor #12471
  • Exclude zfs_copies_003_pos on Linux #12738
  • Restore dirty dnode detection logic #11900 #12745
  • Fix lseek(SEEK_DATA/SEEK_HOLE) mmap consistency #12724
  • Upgrade to libabigail 2.0.0 #12722 #12739
  • zed: Control NVMe fault LEDs #12648 #12695
  • Linux 5.16 compat: submit_bio() #12725
  • Linux 5.16 compat: linux/elevator.h #12725
  • vdev_id: Fix PHY sorting #12699
  • vdev_id: Fix enclosure_symlinks feature #12660
  • Rescan enclosure sysfs path on import #11950 #12095
  • FreeBSD: Catch up with recent VFS changes #12668
  • FreeBSD: fix compilation of FreeBSD world after 29274c9 #12282
  • ZTS: Standardize use of destroy_dataset in cleanup #12663
  • Workaround cloud-init hotplug issue #12644 #12669
  • Use fallthrough macro #12441
  • Detect HAVE_LARGE_STACKS at compile time (#12584) #12350
  • Correct a flaw in the Python 3 version checking (#12636)