[PATCH] common/fuzzy: don't attempt online scrubbing unless supported

Anthony Iliopoulos
2020-04-21T11:37:07Z

Many xfs metadata fuzzing tests invoke xfs_scrub to detect online errors
even when _scratch_xfs_fuzz_metadata is invoked with "offline". This
causes those tests to fail with output mismatches on kernels that don't
enable CONFIG_XFS_ONLINE_SCRUB. Bypass scrubbing when not supported.

Signed-off-by: Anthony Iliopoulos <ailiop@suse.com>
---
common/fuzzy | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/common/fuzzy b/common/fuzzy
index 988203b1..83ddc3e8 100644
--- a/common/fuzzy
+++ b/common/fuzzy
@@ -238,7 +238,7 @@ __scratch_xfs_fuzz_field_test() {
if [ $res -eq 0 ]; then
# Try an online scrub unless we're fuzzing ag 0's sb,
# which scrub doesn't know how to fix.
- if [ "${repair}" != "none" ]; then
+ if _supports_xfs_scrub "${SCRATCH_MNT}" "${SCRATCH_DEV}"; then
echo "++ Online scrub"
if [ "$1" != "sb 0" ]; then
_scratch_scrub -n -e continue 2>&1
--
2.26.2