linux-xfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Eryu Guan <eguan@redhat.com>
To: fstests@vger.kernel.org
Cc: linux-xfs@vger.kernel.org, Eryu Guan <eguan@redhat.com>
Subject: [PATCH] fstests: make xfs_io mandatory
Date: Mon,  7 Nov 2016 02:23:21 +0800	[thread overview]
Message-ID: <1478456601-7085-1-git-send-email-eguan@redhat.com> (raw)

_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.

Signed-off-by: Eryu Guan <eguan@redhat.com>
---
 common/config |  4 +++-
 common/rc     | 24 ++++++++++--------------
 tests/xfs/094 |  1 -
 tests/xfs/103 |  1 -
 4 files changed, 13 insertions(+), 17 deletions(-)

diff --git a/common/config b/common/config
index 168f46c..0b6cf01 100644
--- a/common/config
+++ b/common/config
@@ -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`"
diff --git a/common/rc b/common/rc
index a84efe4..088ede6 100644
--- a/common/rc
+++ b/common/rc
@@ -2896,30 +2896,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
diff --git a/tests/xfs/094 b/tests/xfs/094
index cee42d6..bf9eb2f 100755
--- a/tests/xfs/094
+++ b/tests/xfs/094
@@ -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()
 {
diff --git a/tests/xfs/103 b/tests/xfs/103
index cbe884f..48b8c59 100755
--- a/tests/xfs/103
+++ b/tests/xfs/103
@@ -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
-- 
2.7.4


             reply	other threads:[~2016-11-06 18:23 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-06 18:23 Eryu Guan [this message]
2016-11-07  4:46 ` [PATCH] fstests: make xfs_io mandatory Dave Chinner
2016-11-13 12:12 ` Christoph Hellwig

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1478456601-7085-1-git-send-email-eguan@redhat.com \
    --to=eguan@redhat.com \
    --cc=fstests@vger.kernel.org \
    --cc=linux-xfs@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).