Reviewed-by: Chandra Seetharaman <sekharan@xxxxxxxxxx> On Thu, 2013-07-11 at 12:37 +0200, Lukas Czerner wrote: > 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 <lczerner@xxxxxxxxxx> > --- > common/rc | 74 ++++++++++++++++++++++++++++++++------------------------------- > 1 file changed, 38 insertions(+), 36 deletions(-) > > diff --git a/common/rc b/common/rc > index fe6bbfc..0dd30a3 100644 > --- a/common/rc > +++ b/common/rc > @@ -2131,46 +2131,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 _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs