ZTS: Test for all known zpool feature sets

zpool_create_features_007_pos only tested for compat-2020 feature
set. It would be useful to test for all known features sets. If
any additional feature is found enabled that is not present in
compatibility list or feature set, it should be caught and
reported earlier.

This commit also removes encryption from openzfsonosx-1.8.1
compatibility list. Encryption enables bookmark_v2, since it is
a dependency of encryption, but not listed in openzfsonoxx-1.8.1
compatibility list.

Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Umer Saleem <usaleem@ixsystems.com>
Closes #15505
This commit is contained in:
Umer Saleem 2023-11-08 16:00:59 +05:00 committed by Tony Hutter
parent f863ac3d0f
commit f1659cc782
2 changed files with 7 additions and 4 deletions

View File

@ -6,7 +6,6 @@ edonr
embedded_data embedded_data
empty_bpobj empty_bpobj
enabled_txg enabled_txg
encryption
extensible_dataset extensible_dataset
filesystem_limits filesystem_limits
hole_birth hole_birth

View File

@ -34,6 +34,7 @@
# STRATEGY: # STRATEGY:
# 1. Create a pool with a known feature set. # 1. Create a pool with a known feature set.
# 2. Verify only those features are active/enabled. # 2. Verify only those features are active/enabled.
# 3. Do this for all known feature sets
# #
verify_runnable "global" verify_runnable "global"
@ -47,8 +48,11 @@ log_onexit cleanup
log_assert "creates a pool with a specified feature set enabled" log_assert "creates a pool with a specified feature set enabled"
log_must zpool create -f -o compatibility=compat-2020 $TESTPOOL $DISKS for compat in "$ZPOOL_COMPAT_DIR"/*
check_feature_set $TESTPOOL compat-2020 do
log_must zpool destroy -f $TESTPOOL log_must zpool create -f -o compatibility="${compat##*/}" $TESTPOOL $DISKS
check_feature_set $TESTPOOL "${compat##*/}"
log_must zpool destroy -f $TESTPOOL
done
log_pass "creates a pool with a specified feature set enabled" log_pass "creates a pool with a specified feature set enabled"