xfs
[Top] [All Lists]

[PATCH V2] xfstests shared/298: various fixes

To: Eric Sandeen <sandeen@xxxxxxxxxx>
Subject: [PATCH V2] xfstests shared/298: various fixes
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Tue, 30 Apr 2013 11:46:00 -0500
Cc: xfs-oss <xfs@xxxxxxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <517AE12C.2050902@xxxxxxxxxx>
References: <517AE12C.2050902@xxxxxxxxxx>
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130328 Thunderbird/17.0.5
fix shared/298:

* don't include common/config, not needed and breaks
  stuff when $SCRATCH_DEV_POOL is defined:
    Error: $SCRATCH_DEV should be unset when $SCRATCH_DEV_POOL is set
* make sure xfs_io has fiemap, we'll need it
* add -F to the xfs_io invocation, again, for use on
  old xfsprogs on non-xfs filesystems
* ignore ENOSPC errors from "garbage" loop; the only goal
  is to fill it, ENOSPC doesn't matter.

Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
---

V2: break out of copy loop when full

diff --git a/tests/shared/298 b/tests/shared/298
index f1a3432..4541798 100755
--- a/tests/shared/298
+++ b/tests/shared/298
@@ -28,12 +28,12 @@ echo "QA output created by $seq"
 status=1       # failure is the default!
 trap "_cleanup; exit \$status" 0 1 2 3 15
 
-. common/config
-. common/rc
+. ./common/rc
 
 _supported_fs ext4 xfs
 _supported_os Linux
 _require_fstrim
+_require_xfs_io_fiemap
 _require_fs_space $TEST_DIR 307200
 [ "$FSTYP" = "ext4" ] && _require_dumpe2fs
 
@@ -49,7 +49,7 @@ _cleanup()
 
 get_holes()
 {
-       $XFS_IO_PROG -c fiemap $1 | grep hole | $SED_PROG 
's/.*\[\(.*\)\.\.\(.*\)\].*/\1 \2/'
+       $XFS_IO_PROG -F -c fiemap $1 | grep hole | $SED_PROG 
's/.*\[\(.*\)\.\.\(.*\)\].*/\1 \2/'
 }
 
 get_free_sectors()
@@ -136,9 +136,10 @@ $MKFS_PROG -t $FSTYP $MKFS_OPTIONS $loop_dev &> /dev/null
 $MOUNT_PROG $loop_dev $loop_mnt
 
 echo -n "Generating garbage on loop..."
+# Goal is to fill it up, ignore any errors.
 for i in `seq 1 10`; do
-       mkdir $loop_mnt/$i
-       cp -r $here/* $loop_mnt/$i
+       mkdir $loop_mnt/$i &> /dev/null
+       cp -r $here/* $loop_mnt/$i &> /dev/null || break
 done
 
 # Get reference fiemap, this can contain i.e. uninitialized inode table


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