common/rc: fix _require_xfs_io_command params check

When _require_xfs_io_command is passed command parameters,
the resulting error from invalid parameters may be ignored.

For example, the following bogus params would not abort the test:
_require_xfs_io_command "falloc" "-X"
_require_xfs_io_command "fiemap" "-X"

Fix this by looking for the relevant error message.

Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Reviewed-by: Eryu Guan <eguan@redhat.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
This commit is contained in:
Amir Goldstein
2017-08-23 18:49:11 +03:00
committed by Eryu Guan
parent 5bbc4ffa0d
commit 9b1358a22b
+6 -1
View File
@@ -2212,9 +2212,14 @@ _require_xfs_io_command()
echo $testio | grep -q "Function not implemented" && \
_notrun "xfs_io $command support is missing (missing syscall?)"
if [ -n "$param" -a $param_checked -eq 0 ]; then
[ -n "$param" ] || return
if [ $param_checked -eq 0 ]; then
$XFS_IO_PROG -c "help $command" | grep -q "^ $param --" || \
_notrun "xfs_io $command doesn't support $param"
else
echo $testio | grep -q "invalid option" && \
_notrun "xfs_io $command doesn't support $param"
fi
}