xfstests: Remove dependence of xfs_check script

Replace the usage of the script xfs_check and add the relevant code to
xfstests.

This is in preparation of the planned deprecation of xfs_check.

Signed-off-by: Chandra Seetharaman <sekharan@us.ibm.com>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Rich Johnston <rjohnston@sgi.com>
This commit is contained in:
Chandra Seetharaman
2013-04-18 17:44:02 +00:00
committed by Rich Johnston
parent 2519a97d10
commit 187bccd310
5 changed files with 34 additions and 8 deletions
-1
View File
@@ -154,7 +154,6 @@ export DF_PROG="`set_prog_path df`"
export XFS_LOGPRINT_PROG="`set_prog_path xfs_logprint`" export XFS_LOGPRINT_PROG="`set_prog_path xfs_logprint`"
export XFS_REPAIR_PROG="`set_prog_path xfs_repair`" export XFS_REPAIR_PROG="`set_prog_path xfs_repair`"
export XFS_CHECK_PROG="`set_prog_path xfs_check`"
export XFS_DB_PROG="`set_prog_path xfs_db`" export XFS_DB_PROG="`set_prog_path xfs_db`"
export XFS_GROWFS_PROG=`set_prog_path xfs_growfs` export XFS_GROWFS_PROG=`set_prog_path xfs_growfs`
export XFS_IO_PROG="`set_prog_path xfs_io`" export XFS_IO_PROG="`set_prog_path xfs_io`"
+30 -3
View File
@@ -166,7 +166,6 @@ case "$FSTYP" in
xfs) xfs)
[ "$XFS_LOGPRINT_PROG" = "" ] && _fatal "xfs_logprint not found" [ "$XFS_LOGPRINT_PROG" = "" ] && _fatal "xfs_logprint not found"
[ "$XFS_REPAIR_PROG" = "" ] && _fatal "xfs_repair not found" [ "$XFS_REPAIR_PROG" = "" ] && _fatal "xfs_repair not found"
[ "$XFS_CHECK_PROG" = "" ] && _fatal "xfs_check not found"
[ "$XFS_DB_PROG" = "" ] && _fatal "xfs_db not found" [ "$XFS_DB_PROG" = "" ] && _fatal "xfs_db not found"
[ "$MKFS_XFS_PROG" = "" ] && _fatal "mkfs_xfs not found" [ "$MKFS_XFS_PROG" = "" ] && _fatal "mkfs_xfs not found"
;; ;;
@@ -387,6 +386,34 @@ _scratch_mkfs_xfs()
return $mkfs_status return $mkfs_status
} }
# xfs_check script is planned to be deprecated. But, we want to
# be able to invoke "xfs_check" behavior in xfstests in order to
# maintain the current verification levels.
_xfs_check()
{
OPTS=" "
DBOPTS=" "
OPTIND=1
while getopts "b:fi:l:stvV" c
do
case $c in
s) OPTS=$OPTS"-s ";;
t) OPTS=$OPTS"-t ";;
v) OPTS=$OPTS"-v ";;
i) OPTS=$OPTS"-i "$OPTARG" ";;
b) OPTS=$OPTS"-b "$OPTARG" ";;
f) DBOPTS=$DBOPTS" -f";;
l) DBOPTS=$DBOPTS" -l "$OPTARG" ";;
V) $XFS_DB_PROG -p xfs_check -V
return $?
;;
esac
done
${XFS_DB_PROG}${DBOPTS} -F -i -p xfs_check -c "check$OPTS" $1
return $?
}
_setup_large_ext4_fs() _setup_large_ext4_fs()
{ {
fs_size=$1 fs_size=$1
@@ -589,7 +616,7 @@ _scratch_xfs_check()
SCRATCH_OPTIONS="-l $SCRATCH_LOGDEV" SCRATCH_OPTIONS="-l $SCRATCH_LOGDEV"
[ "$LARGE_SCRATCH_DEV" = yes ] && \ [ "$LARGE_SCRATCH_DEV" = yes ] && \
SCRATCH_OPTIONS=$SCRATCH_OPTIONS" -t" SCRATCH_OPTIONS=$SCRATCH_OPTIONS" -t"
$XFS_CHECK_PROG $SCRATCH_OPTIONS $* $SCRATCH_DEV _xfs_check $SCRATCH_OPTIONS $* $SCRATCH_DEV
} }
_scratch_xfs_repair() _scratch_xfs_repair()
@@ -1426,7 +1453,7 @@ _check_xfs_filesystem()
# option (-t) to avoid indexing the free space trees doesn't make it pass on # option (-t) to avoid indexing the free space trees doesn't make it pass on
# large filesystems. Avoid it. # large filesystems. Avoid it.
if [ "$LARGE_SCRATCH_DEV" != yes ]; then if [ "$LARGE_SCRATCH_DEV" != yes ]; then
$XFS_CHECK_PROG $extra_log_options $device 2>&1 |\ _xfs_check $extra_log_options $device 2>&1 |\
_fix_malloc >$tmp.fs_check _fix_malloc >$tmp.fs_check
fi fi
if [ -s $tmp.fs_check ] if [ -s $tmp.fs_check ]
+2 -2
View File
@@ -120,11 +120,11 @@ _check()
if [ $expect -eq 0 ] if [ $expect -eq 0 ]
then then
_echo " *** xfs_check ($LOG/check_clean.out)" _echo " *** xfs_check ($LOG/check_clean.out)"
xfs_check $TEST_DEV &> $LOG/check_clean.out || fail=1 _xfs_check $TEST_DEV &> $LOG/check_clean.out || fail=1
[ -s /tmp/xfs_check_clean.out ] && fail=1 [ -s /tmp/xfs_check_clean.out ] && fail=1
else else
_echo " *** xfs_check ($LOG/check_dirty.out)" _echo " *** xfs_check ($LOG/check_dirty.out)"
xfs_check $TEST_DEV &> $LOG/check_dirty.out || fail=1 _xfs_check $TEST_DEV &> $LOG/check_dirty.out || fail=1
fi fi
if [ $fail -eq 0 -a $expect -eq 0 ] if [ $fail -eq 0 -a $expect -eq 0 ]
+1 -1
View File
@@ -70,7 +70,7 @@ _print_logstate
# curious if FS consistent at start # curious if FS consistent at start
if false; then if false; then
if $XFS_CHECK_PROG $SCRATCH_DEV; then if _xfs_check $SCRATCH_DEV; then
echo "*** checked ok ***" echo "*** checked ok ***"
fi fi
fi fi
Regular → Executable
+1 -1
View File
@@ -113,7 +113,7 @@ done
_scratch_unmount _scratch_unmount
# Can xfs_repair and xfs_check cope with this monster? # Can xfs_repair and xfs_check cope with this monster?
_scratch_xfs_repair >> $seqres.full 2>&1 || _fail "xfs_repair failed" _scratch_xfs_repair >> $seqres.full 2>&1 || _fail "xfs_repair failed"
xfs_check $SCRATCH_DEV >> $seqres.full 2>&1 || _fail "xfs_check failed" _xfs_check $SCRATCH_DEV >> $seqres.full 2>&1 || _fail "xfs_check failed"
# Yes they can! Now... # Yes they can! Now...
# Can xfs_metadump cope with this monster? # Can xfs_metadump cope with this monster?