From: Xiao Yang Date: Fri, 23 Nov 2018 05:24:23 +0000 (+0800) Subject: common/rc: Add _require_filefrag_options() to check options for filefrag X-Git-Tag: v2022.05.01~1329 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=c1cef1bd82a973e7d331593217e4b3f6c27aced4;p=xfstests-dev.git common/rc: Add _require_filefrag_options() to check options for filefrag In generic/519, filefrag command use FIBMAP ioctl(-B option) to print output in extent format(-e option) on purpose and sync file(-s option), so add _require_filefrag_options() to check if the command supports all of these options. References: 1) filefrag supports -e option by commit 2508eaa since e2fsprogs v1.42.7. 2) filefrag supports -B option by commit 5d5e01d since e2fsprogs v1.41.9. 3) filefrag supports -s option by commit e62847c since e2fsprogs v1.41.6. Signed-off-by: Xiao Yang Reviewed-by: Eryu Guan Signed-off-by: Eryu Guan --- diff --git a/common/rc b/common/rc index ecb17380..e5da6484 100644 --- a/common/rc +++ b/common/rc @@ -3843,10 +3843,23 @@ _require_scratch_btime() _scratch_unmount } -_require_fibmap() +_require_filefrag_options() { _require_command "$FILEFRAG_PROG" filefrag + local options=$1 + local file="$TEST_DIR/options_testfile" + + echo "XX" > $file + ${FILEFRAG_PROG} -$options $file 2>&1 | grep -q "invalid option" && \ + _notrun "filefrag doesn't support $options option" + rm -f $file +} + +_require_fibmap() +{ + _require_filefrag_options "B" + local file="$TEST_DIR/fibmap_testfile" echo "XX" > $file diff --git a/tests/generic/519 b/tests/generic/519 index 229c5b46..d1a3c171 100755 --- a/tests/generic/519 +++ b/tests/generic/519 @@ -33,8 +33,8 @@ rm -f $seqres.full _supported_fs generic _supported_os Linux _require_scratch -_require_command "$FILEFRAG_PROG" filefrag _require_fibmap +_require_filefrag_options "es" testfile="$SCRATCH_MNT/$seq-testfile"