xfs/068: fix clonerange problems in file/dir count output
authorDarrick J. Wong <darrick.wong@oracle.com>
Wed, 13 Dec 2017 23:28:05 +0000 (15:28 -0800)
committerEryu Guan <eguan@redhat.com>
Fri, 5 Jan 2018 18:09:02 +0000 (02:09 +0800)
In this test we use a fixed sequence of operations in fsstress to
create some number of files and dirs and then exercise
xfsdump/xfsrestore on them.  Since clonerange/deduperange are not
supported on all xfs configurations, detect if they're in fsstress
and disable them so that we always execute exactly the same sequence
of operations no matter how the filesystem is configured.

[eguan: move it from xfs/068 to common/dump as Dave suggested]

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Suggested-by: Dave Chinner <david@fromorbit.com>
Reviewed-by: Eryu Guan <eguan@redhat.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
common/dump

index 898aaa40b31ea6facade3f95a3a86740a4ac5f13..2b3cfa0f060740aa22dab27f156e880ab1af95a4 100644 (file)
@@ -312,6 +312,17 @@ _create_dumpdir_stress_num()
         status=1
         exit
     fi
+
+    # Remove fsstress commands that aren't supported on all xfs configs so that
+    # we always execute exactly the same sequence of operations no matter how
+    # the filesystem is configured
+    if $FSSTRESS_PROG | grep -q clonerange; then
+        FSSTRESS_AVOID="-f clonerange=0 $FSSTRESS_AVOID"
+    fi
+    if $FSSTRESS_PROG | grep -q deduperange; then
+        FSSTRESS_AVOID="-f deduperange=0 $FSSTRESS_AVOID"
+    fi
+
     echo ""
     echo "-----------------------------------------------"
     echo "fsstress : $_param"