inject: skip tests when knob dir exists but knob doesn't

If the XFS error injection knob directory exists but the knob itself
doesn't, then we know that this kernel doesn't support the knob and
can skip the test.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
This commit is contained in:
Darrick J. Wong
2019-02-11 18:17:48 -08:00
committed by Eryu Guan
parent e6897e32b8
commit f98cc2256b
+7
View File
@@ -62,6 +62,13 @@ _require_xfs_io_error_injection()
knob="$(_find_xfs_mountdev_errortag_knob "${TEST_DEV}" "${type}")"
test -w "${knob}" && return
# If the directory containing the sysfs error injection knob exists
# but the knob itself isn't usable, this kernel doesn't know about
# the knob. Skip the test.
if [ -d "$(dirname "${knob}")" ]; then
_notrun "XFS error injection $type unknown on this kernel."
fi
# NOTE: We can't actually test error injection here because xfs
# hasn't always range checked the argument to xfs_errortag_add.
# We also don't want to trip an error before we're ready to deal