freebsd-src/sys/contrib/openzfs/RELEASES.md
Martin Matuska 1603881667 zfs: merge openzfs/zfs@75b4cbf62 (master) into main
Notable upstream pull request merges:
  #11710 Allow zfs to send replication streams with missing snapshots
  #11751 Avoid taking global lock to destroy zfsdev state
  #11786 Ratelimit deadman zevents as with delay zevents
  #11803 ZFS traverse_visitbp optimization to limit prefetch
  #11813 Allow pool names that look like Solaris disk names
  #11822 Atomically check and set dropped zevent count
  #11822 Don't scale zfs_zevent_len_max by CPU count
  #11833 Refactor zfsdev state init/destroy to share common code
  #11837 zfs get -p only outputs 3 columns if "clones" property is empty
  #11843 libzutil: zfs_isnumber(): return false if input empty
  #11849 Use dsl_scan_setup_check() to setup a scrub
  #11861 Improvements to the 'compatibility' property
  #11862 cmd/zfs receive: allow dry-run (-n) to check property args
  #11864 receive: don't fail inheriting (-x) properties on wrong dataset type
  #11877 Combine zio caches if possible
  #11881 FreeBSD: use vnlru_free_vfsops if available
  #11883 FreeBSD: add support for lockless symlink lookup
  #11884 FreeBSD: add missing seqc write begin/end around zfs_acl_chown_setattr
  #11896 Fix crash in zio_done error reporting
  #11905 zfs-send(8): Restore sorting of flags
  #11926 FreeBSD: damage control racing .. lookups in face of mkdir/rmdir
  #11930 vdev_mirror: don't scrub/resilver devices that can't be read
  #11938 Fix AVX512BW Fletcher code on AVX512-but-not-BW machines
  #11955 zfs get: don't lookup mount options when using "-s local"
  #11956 libzfs: add keylocation=https://, backed by fetch(3) or libcurl
  #11959 vdev_id: variable not getting expanded under map_slot()
  #11966 Scale worker threads and taskqs with number of CPUs
  #11994 Clean up use of zfs_log_create in zfs_dir
  #11997 FreeBSD: Don't force xattr mount option
  #11997 FreeBSD: Implement xattr=sa
  #11997 FreeBSD: Use SET_ERROR to trace xattr name errors
  #11998 Simplify/fix dnode_move() for dn_zfetch
  #12003 FreeBSD: Initialize/destroy zp->z_lock
  #12010 Fix dRAID self-healing short columns
  #12033 Revert "Fix raw sends on encrypted datasets when copying back snapshots"
  #12040 Reinstate the old zpool read label logic as a fallback
  #12046 Improve scrub maxinflight_bytes math
  #12049 FreeBSD: avoid memory allocation in arc_prune_async
  #12052 FreeBSD: incorporate changes to the VFS_QUOTACTL(9) KPI
  #12061 Fix dRAID sequential resilver silent damage handling
  #12072 Let zfs diff be more permissive
  #12077 FreeBSD: Retry OCF ENOMEM errors.
  #12088 Propagate vdev state due to invalid label corruption
  #12091 libzfs: On FreeBSD, use MNT_NOWAIT with getfsstat
  #12097 FreeBSD: Update dataset_kstats for zvols in dev mode
  #12104 FreeBSD boot code reminder after zpool upgrade
  #12114 Introduce write-mostly sums

Obtained from:	OpenZFS
OpenZFS commit:	75b4cbf625
2021-06-08 16:52:44 +02:00

2.2 KiB

OpenZFS uses the MAJOR.MINOR.PATCH versioning scheme described here:

  • MAJOR - Incremented at the discretion of the OpenZFS developers to indicate a particularly noteworthy feature or change. An increase in MAJOR number does not indicate any incompatible on-disk format change. The ability to import a ZFS pool is controlled by the feature flags enabled on the pool and the feature flags supported by the installed OpenZFS version. Increasing the MAJOR version is expected to be an infrequent occurrence.

  • MINOR - Incremented to indicate new functionality such as a new feature flag, pool/dataset property, zfs/zpool sub-command, new user/kernel interface, etc. MINOR releases may introduce incompatible changes to the user space library APIs (libzfs.so). Existing user/kernel interfaces are considered to be stable to maximize compatibility between OpenZFS releases. Additions to the user/kernel interface are backwards compatible.

  • PATCH - Incremented when applying documentation updates, important bug fixes, minor performance improvements, and kernel compatibility patches. The user space library APIs and user/kernel interface are considered to be stable. PATCH releases for a MAJOR.MINOR are published as needed.

Two release branches are maintained for OpenZFS, they are:

  • OpenZFS LTS - A designated MAJOR.MINOR release with periodic PATCH releases that incorporate important changes backported from newer OpenZFS releases. This branch is intended for use in environments using an LTS, enterprise, or similarly managed kernel (RHEL, Ubuntu LTS, Debian). Minor changes to support these distribution kernels will be applied as needed. New kernel versions released after the OpenZFS LTS release are not supported. LTS releases will receive patches for at least 2 years. The current LTS release is OpenZFS 2.1.

  • OpenZFS current - Tracks the newest MAJOR.MINOR release. This branch includes support for the latest OpenZFS features and recently releases kernels. When a new MINOR release is tagged the previous MINOR release will no longer be maintained (unless it is an LTS release). New MINOR releases are planned to occur roughly annually.