xfs
[Top] [All Lists]

[PATCH 2/3] xfstests: Obey mkfs options for sized filesystems on XFS

To: xfs@xxxxxxxxxxx
Subject: [PATCH 2/3] xfstests: Obey mkfs options for sized filesystems on XFS
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Tue, 3 Sep 2013 10:14:54 +1000
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1378167295-7566-1-git-send-email-david@xxxxxxxxxxxxx>
References: <1378167295-7566-1-git-send-email-david@xxxxxxxxxxxxx>
From: Dave Chinner <dchinner@xxxxxxxxxx>

The XFS implementation of _scratch_mkfs_sized ignores MKFS_OPTIONS
when a custom block size is set and so isn't testing things like
CRCs on such sized filesytsems. Fix this by ensuring we don't try to
override the block size is it is set in MKFS_OPTIONS. xfs/204 shows
this problem.

Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
---
 common/rc         | 8 +++++++-
 tests/generic/204 | 4 +++-
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/common/rc b/common/rc
index 358f24b..8a239c5 100644
--- a/common/rc
+++ b/common/rc
@@ -578,7 +578,13 @@ _scratch_mkfs_sized()
 
     case $FSTYP in
     xfs)
-       _scratch_mkfs_xfs -d size=$fssize -b size=$blocksize
+       # don't override MKFS_OPTIONS that set a block size.
+       echo $MKFS_OPTIONS |egrep -q "b?size="
+       if [ $? -eq 0 ]; then
+               _scratch_mkfs_xfs -d size=$fssize
+       else
+               _scratch_mkfs_xfs -d size=$fssize -b size=$blocksize
+       fi
        ;;
     ext2|ext3|ext4|ext4dev)
        yes | ${MKFS_PROG}.$FSTYP $MKFS_OPTIONS -b $blocksize $SCRATCH_DEV 
$blocks
diff --git a/tests/generic/204 b/tests/generic/204
index 98cb176..a054c8f 100755
--- a/tests/generic/204
+++ b/tests/generic/204
@@ -39,13 +39,15 @@ _supported_os Linux
 
 _require_scratch
 
+rm -f $seqres.full
+
 SIZE=`expr 104 \* 1024 \* 1024`
 _scratch_mkfs_sized $SIZE  &> /dev/null
 _scratch_mount
 
 # fix the reserve block pool to a known size so that the enospc calculations
 # work out correctly.
-_scratch_resvblks 1024 > $seqres.full 2>&1
+_scratch_resvblks 1024 >> $seqres.full 2>&1
 
 for i in `seq 1 22500`; do
     echo -n > $SCRATCH_MNT/$i
-- 
1.8.3.2

<Prev in Thread] Current Thread [Next in Thread>