From: Lukas Czerner Date: Thu, 11 Jul 2013 10:37:59 +0000 (+0000) Subject: xfstests: Allow to recheck options in common/rc X-Git-Tag: v2022.05.01~3387 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=2ff460998d3c548da9c29c2a52a7f419a309a154;p=users%2Fhch%2Fxfstests-dev.git xfstests: Allow to recheck options in common/rc Move configuration checks into separate function to allow us to recheck the options without the need to reinclude the whole source file which is ugly. We still run the check on include. Signed-off-by: Lukas Czerner Reviewed-by: Chandra Seetharaman Signed-off-by: Rich Johnston --- diff --git a/common/rc b/common/rc index a761833ca..ae80b127e 100644 --- a/common/rc +++ b/common/rc @@ -2139,46 +2139,48 @@ run_check() "$@" >> $seqres.full 2>&1 || _fail "failed: '$@'" } -################################################################################ - -if [ "$iam" != new ] -then - # make some further configuration checks here - - if [ "$TEST_DEV" = "" ] - then - echo "common/rc: Error: \$TEST_DEV is not set" - exit 1 - fi - - # if $TEST_DEV is not mounted, mount it now as XFS - if [ -z "`_fs_type $TEST_DEV`" ] - then - # $TEST_DEV is not mounted - if ! _test_mount - then - echo "common/rc: retrying test device mount with external set" - [ "$USE_EXTERNAL" != "yes" ] && export USE_EXTERNAL=yes - if ! _test_mount - then - echo "common/rc: could not mount $TEST_DEV on $TEST_DIR" - exit 1 - fi - fi - fi +init_rc() +{ + if [ "$iam" == new ] + then + return + fi + # make some further configuration checks here + if [ "$TEST_DEV" = "" ] + then + echo "common/rc: Error: \$TEST_DEV is not set" + exit 1 + fi - if [ "`_fs_type $TEST_DEV`" != "$FSTYP" ] - then - echo "common/rc: Error: \$TEST_DEV ($TEST_DEV) is not a MOUNTED $FSTYP filesystem" - $DF_PROG $TEST_DEV - exit 1 - fi + # if $TEST_DEV is not mounted, mount it now as XFS + if [ -z "`_fs_type $TEST_DEV`" ] + then + # $TEST_DEV is not mounted + if ! _test_mount + then + echo "common/rc: retrying test device mount with external set" + [ "$USE_EXTERNAL" != "yes" ] && export USE_EXTERNAL=yes + if ! _test_mount + then + echo "common/rc: could not mount $TEST_DEV on $TEST_DIR" + exit 1 + fi + fi + fi - # Figure out if we need to add -F ("foreign", deprecated) option to xfs_io - xfs_io -c stat $TEST_DIR 2>&1 | grep -q "is not on an XFS filesystem" && \ + if [ "`_fs_type $TEST_DEV`" != "$FSTYP" ] + then + echo "common/rc: Error: \$TEST_DEV ($TEST_DEV) is not a MOUNTED $FSTYP filesystem" + $DF_PROG $TEST_DEV + exit 1 + fi + # Figure out if we need to add -F ("foreign", deprecated) option to xfs_io + xfs_io -c stat $TEST_DIR 2>&1 | grep -q "is not on an XFS filesystem" && \ export XFS_IO_PROG="$XFS_IO_PROG -F" +} -fi +init_rc +################################################################################ # make sure this script returns success /bin/true