From 67859aedd14eb020b2f2988498410e661067a582 Mon Sep 17 00:00:00 2001 From: Mike Swanson Date: Wed, 31 Mar 2021 09:40:25 -0700 Subject: [PATCH] Add compatibility file sets (ZoL 0.6.1, 0.6.4, OpenZFS 2.1) ZoL 0.6.1 introduced feature flags with the three features that all implementations at the time were guaranteed to have. 0.6.4 introduced a few more until 0.6.5 added two after that. OpenZFS 2.1 added the dRAID feature. Reviewed-by: Brian Behlendorf Signed-off-by: Mike Swanson Closes #11818 --- cmd/zpool/Makefile.am | 4 +++ cmd/zpool/compatibility.d/openzfs-2.1-freebsd | 34 ++++++++++++++++++ cmd/zpool/compatibility.d/openzfs-2.1-linux | 35 +++++++++++++++++++ cmd/zpool/compatibility.d/zol-0.6.1 | 4 +++ cmd/zpool/compatibility.d/zol-0.6.4 | 10 ++++++ 5 files changed, 87 insertions(+) create mode 100644 cmd/zpool/compatibility.d/openzfs-2.1-freebsd create mode 100644 cmd/zpool/compatibility.d/openzfs-2.1-linux create mode 100644 cmd/zpool/compatibility.d/zol-0.6.1 create mode 100644 cmd/zpool/compatibility.d/zol-0.6.4 diff --git a/cmd/zpool/Makefile.am b/cmd/zpool/Makefile.am index abfa940c3d..4446cf04a0 100644 --- a/cmd/zpool/Makefile.am +++ b/cmd/zpool/Makefile.am @@ -146,6 +146,10 @@ dist_zpoolcompat_DATA = \ compatibility.d/openzfsonosx-1.9.3 \ compatibility.d/openzfs-2.0-freebsd \ compatibility.d/openzfs-2.0-linux \ + compatibility.d/openzfs-2.1-freebsd \ + compatibility.d/openzfs-2.1-linux \ + compatibility.d/zol-0.6.1 \ + compatibility.d/zol-0.6.4 \ compatibility.d/zol-0.6.5 \ compatibility.d/zol-0.7 \ compatibility.d/zol-0.8 diff --git a/cmd/zpool/compatibility.d/openzfs-2.1-freebsd b/cmd/zpool/compatibility.d/openzfs-2.1-freebsd new file mode 100644 index 0000000000..9fde997e8c --- /dev/null +++ b/cmd/zpool/compatibility.d/openzfs-2.1-freebsd @@ -0,0 +1,34 @@ +# Features supported by OpenZFS 2.1 on FreeBSD +allocation_classes +async_destroy +bookmark_v2 +bookmark_written +bookmarks +device_rebuild +device_removal +draid +embedded_data +empty_bpobj +enabled_txg +encryption +extensible_dataset +filesystem_limits +hole_birth +large_blocks +large_dnode +livelist +log_spacemap +lz4_compress +multi_vdev_crash_dump +obsolete_counts +project_quota +redacted_datasets +redaction_bookmarks +resilver_defer +sha512 +skein +spacemap_histogram +spacemap_v2 +userobj_accounting +zpool_checkpoint +zstd_compress diff --git a/cmd/zpool/compatibility.d/openzfs-2.1-linux b/cmd/zpool/compatibility.d/openzfs-2.1-linux new file mode 100644 index 0000000000..c3ff176bf8 --- /dev/null +++ b/cmd/zpool/compatibility.d/openzfs-2.1-linux @@ -0,0 +1,35 @@ +# Features supported by OpenZFS 2.1 on Linux +allocation_classes +async_destroy +bookmark_v2 +bookmark_written +bookmarks +device_rebuild +device_removal +draid +edonr +embedded_data +empty_bpobj +enabled_txg +encryption +extensible_dataset +filesystem_limits +hole_birth +large_blocks +large_dnode +livelist +log_spacemap +lz4_compress +multi_vdev_crash_dump +obsolete_counts +project_quota +redacted_datasets +redaction_bookmarks +resilver_defer +sha512 +skein +spacemap_histogram +spacemap_v2 +userobj_accounting +zpool_checkpoint +zstd_compress diff --git a/cmd/zpool/compatibility.d/zol-0.6.1 b/cmd/zpool/compatibility.d/zol-0.6.1 new file mode 100644 index 0000000000..9bc963ddcc --- /dev/null +++ b/cmd/zpool/compatibility.d/zol-0.6.1 @@ -0,0 +1,4 @@ +# Features supported by ZFSonLinux v0.6.1 +async_destroy +empty_bpobj +lz4_compress diff --git a/cmd/zpool/compatibility.d/zol-0.6.4 b/cmd/zpool/compatibility.d/zol-0.6.4 new file mode 100644 index 0000000000..82a2698c8c --- /dev/null +++ b/cmd/zpool/compatibility.d/zol-0.6.4 @@ -0,0 +1,10 @@ +# Features supported by ZFSonLinux v0.6.4 +async_destroy +bookmarks +embedded_data +empty_bpobj +enabled_txg +extensible_dataset +hole_birth +lz4_compress +spacemap_histogram