]> www.infradead.org Git - users/hch/xfstests-dev.git/commitdiff
fstests: make xfs_io mandatory
authorEryu Guan <eguan@redhat.com>
Sun, 6 Nov 2016 17:43:33 +0000 (01:43 +0800)
committerEryu Guan <eguan@redhat.com>
Mon, 7 Nov 2016 08:06:31 +0000 (16:06 +0800)
_test_inode_flag() and _test_inode_extsz() use "which $XFS_IO_PROG"
to check if xfs_io command is available. And "-i" option was added
to XFS_IO_PROG varibable by commit 54659ecdb575 ("fstests: run
xfs_io with -i option if supported"). So the command becomes "which
/usr/sbin/xfs_io -i", and it stops and waits for input from stdin,
because "-i" option of "which" means "Read aliases from stdin".

I've seen xfs/008 hang when testing with latest xfsprogs, where
xfs_io has "-i" support.

Fix it by removing the xfs_io command detections, and making xfs_io
mandatory in common/config.

Also fix the indentions in these functions, use tab instead of
spaces, while we're at it.

Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
common/config
common/rc
tests/xfs/094
tests/xfs/103

index 59638d694c66da5e7d0fb29904a40331de7039a7..f0f08d245faedf27d3d7ce263cbf9510168ff721 100644 (file)
@@ -158,11 +158,13 @@ export DF_PROG="`set_prog_path df`"
 [ "$DF_PROG" = "" ] && _fatal "df not found"
 [ "$HOSTOS" = "Linux" ] && export DF_PROG="$DF_PROG -T -P"
 
+export XFS_IO_PROG="`set_prog_path xfs_io`"
+[ "$XFS_IO_PROG" = "" ] && _fatal "xfs_io not found"
+
 export XFS_LOGPRINT_PROG="`set_prog_path xfs_logprint`"
 export XFS_REPAIR_PROG="`set_prog_path xfs_repair`"
 export XFS_DB_PROG="`set_prog_path xfs_db`"
 export XFS_GROWFS_PROG=`set_prog_path xfs_growfs`
-export XFS_IO_PROG="`set_prog_path xfs_io`"
 export XFS_SCRUB_PROG="`set_prog_path xfs_scrub`"
 export XFS_PARALLEL_REPAIR_PROG="`set_prog_path xfs_prepair`"
 export XFS_PARALLEL_REPAIR64_PROG="`set_prog_path xfs_prepair64`"
index e3b54ecb5df25e1c1196b948969113f3c3588b1a..f33bbc6a1d5d56170a988810223908aa4e514ffd 100644 (file)
--- a/common/rc
+++ b/common/rc
@@ -2911,30 +2911,26 @@ _populate_fs()
 #
 _test_inode_flag()
 {
-    flag=$1
-    file=$2
+       flag=$1
+       file=$2
 
-    if which $XFS_IO_PROG >/dev/null; then
-        if $XFS_IO_PROG -r -c 'lsattr -v' "$file" | grep -q "$flag" ; then
-           return 0
-        fi
-    fi
-    return 1
+       if $XFS_IO_PROG -r -c 'lsattr -v' "$file" | grep -q "$flag" ; then
+               return 0
+       fi
+       return 1
 }
 
 # query the given files extsize allocator hint in bytes (if any)
 #
 _test_inode_extsz()
 {
-    file=$1
-    blocks=""
+       file=$1
+       blocks=""
 
-    if which $XFS_IO_PROG >/dev/null; then
        blocks=`$XFS_IO_PROG -r -c 'stat' "$file" | \
                awk '/^xattr.extsize =/ { print $3 }'`
-    fi
-    [ -z "$blocks" ] && blocks="0"
-    echo $blocks
+       [ -z "$blocks" ] && blocks="0"
+       echo $blocks
 }
 
 # scratch_dev_pool should contain the disks pool for the btrfs raid
index cee42d65893dc7486ed959356bffc7430c125205..bf9eb2f93d05331b27ef91d69cca667fb63d4e63 100755 (executable)
@@ -46,7 +46,6 @@ _supported_fs xfs
 _supported_os IRIX Linux
 _require_realtime
 _require_scratch
-_require_command "$XFS_IO_PROG" xfs_io
 
 _filter_realtime_flag()
 {
index cbe884f385bdceec8df144579c94c533f976886e..48b8c59c8f6d59788044f8b51b8157426d3dc742 100755 (executable)
@@ -66,7 +66,6 @@ _filter_noymlinks_flag()
 # real QA test starts here
 _supported_os Linux IRIX
 _supported_fs xfs
-_require_command "$XFS_IO_PROG" xfs_io
 _require_scratch
 
 _create_scratch