xfs/216: always disable rmap and reflink when creating log size test fs
authorDarrick J. Wong <darrick.wong@oracle.com>
Tue, 7 May 2019 16:57:03 +0000 (09:57 -0700)
committerEryu Guan <guaneryu@gmail.com>
Fri, 10 May 2019 09:30:09 +0000 (17:30 +0800)
This test seems to check that log sizes scale up properly with the size
of the filesystem, given a carefully controlled set of mkfs parameters.
Since turning on reflink or rmap will change the minimum log size,
change the test to detect their presence and ensure they're disabled.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Tested-by: Yang Xu<xuyang2018.jy@cn.fujitsu.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
tests/xfs/216

index b1fd8ecca5f485d87b83ceade5f0ae0d6a912676..15ff9ae14b48714ba1c95d445e8d33425f7f511c 100755 (executable)
@@ -37,12 +37,18 @@ _require_loop
 LOOP_DEV=$SCRATCH_MNT/test_fs
 LOOP_MNT=$SCRATCH_MNT/test_fs_dir
 
+loop_mkfs_opts=
+$MKFS_XFS_PROG 2>&1 | grep -q rmapbt && \
+       loop_mkfs_opts="$loop_mkfs_opts -m rmapbt=0"
+$MKFS_XFS_PROG 2>&1 | grep -q reflink && \
+       loop_mkfs_opts="$loop_mkfs_opts -m reflink=0"
+
 _do_mkfs()
 {
        for i in $*; do
                echo -n "fssize=${i}g "
                $MKFS_XFS_PROG -f -b size=4096 -l version=2 \
-                       -d name=$LOOP_DEV,size=${i}g |grep log
+                       -d name=$LOOP_DEV,size=${i}g $loop_mkfs_opts |grep log
                mount -o loop -t xfs $LOOP_DEV $LOOP_MNT
                echo "test write" > $LOOP_MNT/test
                umount $LOOP_MNT > /dev/null 2>&1