Split ZFS ZSTD test into its own test script. Add a check to the new test script to see if the zfs utility installed on the host supports "zstd" compression before running the test and skip / error-out the test if not. It seems at least some zfs-fuse binaries do not support zstd compression and the current test will fail in that case. Splitting into a new file will avoid masking other test failures due to missing zstd support.
Signed-off-by: Andrew Hamilton <adham...@gmail.com> --- .gitignore | 1 + Makefile.util.def | 6 ++++++ tests/zfs_test.in | 1 - tests/zfs_zstd_test.in | 30 ++++++++++++++++++++++++++++++ 4 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 tests/zfs_zstd_test.in diff --git a/.gitignore b/.gitignore index 524f2e6d0..67ad2d26d 100644 --- a/.gitignore +++ b/.gitignore @@ -283,3 +283,4 @@ widthspec.bin /xfs_test /xzcompress_test /zfs_test +/zfs_zstd_test diff --git a/Makefile.util.def b/Makefile.util.def index 038253b37..703e8c08d 100644 --- a/Makefile.util.def +++ b/Makefile.util.def @@ -911,6 +911,12 @@ script = { common = tests/zfs_test.in; }; +script = { + testcase = native; + name = zfs_zstd_test; + common = tests/zfs_zstd_test.in; +}; + script = { testcase = native; name = cpio_test; diff --git a/tests/zfs_test.in b/tests/zfs_test.in index 0d0a57f7d..58cc25b22 100644 --- a/tests/zfs_test.in +++ b/tests/zfs_test.in @@ -19,7 +19,6 @@ fi "@builddir@/grub-fs-tester" zfs_lzjb "@builddir@/grub-fs-tester" zfs_gzip "@builddir@/grub-fs-tester" zfs_zle -"@builddir@/grub-fs-tester" zfs_zstd "@builddir@/grub-fs-tester" zfs_raidz3 "@builddir@/grub-fs-tester" zfs_raidz2 "@builddir@/grub-fs-tester" zfs_raidz diff --git a/tests/zfs_zstd_test.in b/tests/zfs_zstd_test.in new file mode 100644 index 000000000..fa187b061 --- /dev/null +++ b/tests/zfs_zstd_test.in @@ -0,0 +1,30 @@ +#!@BUILD_SHEBANG@ + +set -e + +if [ "x$EUID" = "x" ] ; then + EUID=`id -u` +fi + +if [ "$EUID" != 0 ] ; then + exit 99 +fi + +if ! which zpool >/dev/null 2>&1; then + echo "zpool not installed; cannot test zfs." + exit 99 +fi + +if ! which zfs >/dev/null 2>&1; then + echo "zfs not installed; cannot test zfs." + exit 99 +fi + +# If OpenZFS is not installed (only zfs-fuse for example) then +# report fail for ZSTD compression testing. +if ! zfs get 2>&1 | grep -F "compression" | grep -F "zstd"; then + echo "zfs zstd compression not supported; cannot test zfs zstd." + exit 99 +fi + +"@builddir@/grub-fs-tester" zfs_zstd -- 2.39.5 _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel