zfs/cmd
Colm 1f3de97374 Improvements to the 'compatibility' property
Several improvements to the operation of the 'compatibility' property:

1) Improved handling of unrecognized features:
Change the way unrecognized features in compatibility files are handled.

 * invalid features in files under /usr/share/zfs/compatibility.d
   only get a warning (as these may refer to future features not yet in
   the library),
 * invalid features in files under /etc/zfs/compatibility.d
   get an error (as these are presumed to refer to the current system).

2) Improved error reporting from zpool_load_compat.
Note: slight ABI change to zpool_load_compat for better error reporting.

3) compatibility=legacy inhibits all 'zpool upgrade' operations.

4) Detect when features are enabled outside current compatibility set
   * zpool set compatibility=foo <-- print a warning
   * zpool set feature@xxx=enabled <-- error
   * zpool status <-- indicate this state

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Colm Buckley <colm@tuatha.org>
Closes #11861
2021-04-14 13:23:08 -07:00
..
arc_summary arc_summary3: just read /s/m/{mod}/version instead of spawning cat 2021-04-14 13:19:50 -07:00
arcstat FreeBSD: Update usage of py-sysctl 2020-12-10 15:28:31 -08:00
dbufstat dbufstat: Fix warnings with Python 3.8 2020-12-23 15:10:35 -08:00
fsck_zfs fsck.zfs: implement 4/8 exit codes as suggested in manpage 2021-04-07 13:24:18 -07:00
mount_zfs cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
raidz_test Removed duplicated includes 2021-03-22 12:34:58 -07:00
vdev_id vdev_id: Create symlinks even if no /dev/mapper/ 2021-03-08 08:43:30 -08:00
zdb Add zdb -r <dataset> <object-id | file> <output> 2021-01-27 21:36:01 -08:00
zed zed: untangle _zed_conf_parse_path() 2021-04-14 13:19:49 -07:00
zfs Allow zfs to send replication streams with missing snapshots 2021-04-14 13:19:50 -07:00
zfs_ids_to_path zfs_ids_to_path: print correct wrong values 2021-04-14 13:19:50 -07:00
zgenhostid Fix various typos 2021-04-07 13:27:11 -07:00
zhack cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
zinject cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
zpool Improvements to the 'compatibility' property 2021-04-14 13:23:08 -07:00
zpool_influxdb cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
zstream Suppress cppcheck invalidSyntax warninigs 2021-03-05 17:56:35 -08:00
zstreamdump zstreamdump: exec zstream dump 2021-04-14 13:19:50 -07:00
ztest Fix various typos 2021-04-07 13:27:11 -07:00
zvol_id cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00
zvol_wait zvol_wait: properly handle zvol_volmode sysctl being 3/none 2021-04-14 13:19:50 -07:00
Makefile.am cppcheck: integrete cppcheck 2021-01-26 16:12:26 -08:00