From: Darrick J. Wong Date: Tue, 16 Apr 2019 22:36:28 +0000 (-0700) Subject: check: wipe scratch devices between tests X-Git-Tag: v2022.05.01~1183 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=d0e484ac699f;p=users%2Fhch%2Fxfstests-dev.git check: wipe scratch devices between tests Wipe the scratch devices in between each test to ensure that tests are formatting them and not making assumptions about previous contents. Signed-off-by: Darrick J. Wong Reviewed-by: Eryu Guan Signed-off-by: Eryu Guan --- diff --git a/check b/check index 0f1417038..8677141b1 100755 --- a/check +++ b/check @@ -483,9 +483,8 @@ _check_filesystems() if [ -f ${RESULT_DIR}/require_scratch ]; then _check_scratch_fs || err=true rm -f ${RESULT_DIR}/require_scratch* - else - _scratch_unmount 2> /dev/null fi + _scratch_unmount 2> /dev/null } _expunge_test() @@ -625,6 +624,8 @@ for section in $HOST_OPTIONS_SECTIONS; do echo "check: failed to mount \$SCRATCH_DEV using specified options" status=1 exit + else + _scratch_unmount fi fi @@ -737,6 +738,7 @@ for section in $HOST_OPTIONS_SECTIONS; do # _check_dmesg depends on this log in dmesg touch ${RESULT_DIR}/check_dmesg fi + _try_wipe_scratch_devs > /dev/null 2>&1 if [ "$DUMP_OUTPUT" = true ]; then ./$seq 2>&1 | tee $tmp.out # Because $? would get tee's return code diff --git a/common/rc b/common/rc index 92ef9c7d0..8b503eb63 100644 --- a/common/rc +++ b/common/rc @@ -3977,6 +3977,15 @@ _require_fibmap() rm -f $file } +_try_wipe_scratch_devs() +{ + test -x "$WIPEFS_PROG" || return 0 + + for dev in $SCRATCH_DEV_POOL $SCRATCH_DEV $SCRATCH_LOGDEV $SCRATCH_RTDEV; do + test -b $dev && $WIPEFS_PROG -a $dev + done +} + init_rc ################################################################################ diff --git a/common/xfs b/common/xfs index 24065813c..af2b62ba9 100644 --- a/common/xfs +++ b/common/xfs @@ -295,6 +295,7 @@ _require_xfs_db_command() fi command=$1 + _scratch_mkfs_xfs >/dev/null 2>&1 _scratch_xfs_db -x -c "help" | grep $command > /dev/null || \ _notrun "xfs_db $command support is missing" }