xfs
[Top] [All Lists]

Re: [PATCH] xfstests: add _require_sparse_files

To: xfs@xxxxxxxxxxx
Subject: Re: [PATCH] xfstests: add _require_sparse_files
From: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue, 9 Nov 2010 06:34:54 -0500
In-reply-to: <20101028123414.GA24977@xxxxxxxxxxxxx>
References: <20101028123414.GA24977@xxxxxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
updated version to also include test 239 which reqires the check, too.

---
From: Christoph Hellwig <hch@xxxxxx>
Subject: [PATCH] xfstests: add _require_sparse_files

Add a helper to check if the filesystem supports sparse files.  This is
used to guard tests that exercise sparse file functionality and would
take forever on filesystems that have to zero all blocks on extending
truncates.

Unfortunately there's no good way to autodetect this functionality, so
just implement it as a blacklist for now.

Signed-off-by: Christoph Hellwig <hch@xxxxxx>

Index: xfstests-dev/014
===================================================================
--- xfstests-dev.orig/014       2010-11-09 11:28:58.000000000 +0000
+++ xfstests-dev/014    2010-11-09 11:30:14.000000000 +0000
@@ -47,6 +47,7 @@ _cleanup()
 _supported_fs generic
 _supported_os IRIX Linux
 
+_require_sparse_files
 _setup_testdir
 
 echo "brevity is wit..."
Index: xfstests-dev/129
===================================================================
--- xfstests-dev.orig/129       2010-11-09 11:28:58.000000000 +0000
+++ xfstests-dev/129    2010-11-09 11:30:14.000000000 +0000
@@ -52,8 +52,10 @@ echo_and_run()
 _supported_fs generic
 _supported_os Linux
 
-_setup_testdir
 _require_scratch
+_require_sparse_files
+
+_setup_testdir
 
 _scratch_mkfs >/dev/null 2>&1
 _scratch_mount "-o nosuid"
Index: xfstests-dev/130
===================================================================
--- xfstests-dev.orig/130       2010-11-09 11:28:58.000000000 +0000
+++ xfstests-dev/130    2010-11-09 11:30:14.000000000 +0000
@@ -55,8 +55,10 @@ _cleanup()
 _supported_fs generic
 _supported_os Linux IRIX
 
-_setup_testdir
 _require_scratch
+_require_sparse_files
+
+_setup_testdir
 
 _scratch_mkfs >/dev/null 2>&1
 _scratch_mount
Index: xfstests-dev/240
===================================================================
--- xfstests-dev.orig/240       2010-11-09 11:28:58.000000000 +0000
+++ xfstests-dev/240    2010-11-09 11:30:14.000000000 +0000
@@ -48,6 +48,8 @@ _cleanup()
 _supported_fs generic
 _supported_os Linux
 
+_require_sparse_files
+
 echo "Silence is golden."
 
 # real QA test starts here
Index: xfstests-dev/common.rc
===================================================================
--- xfstests-dev.orig/common.rc 2010-11-09 11:28:58.000000000 +0000
+++ xfstests-dev/common.rc      2010-11-09 11:30:14.000000000 +0000
@@ -857,6 +857,22 @@ _require_fs_space()
                _notrun "This test requires at least ${GB}GB free on $MNT to 
run"
 }
 
+#
+# Check if the filesystem supports sparese files.
+#
+# Unfortunately there is no better way to do this than a manual black list.
+#
+_require_sparse_files()
+{
+    case $FSTYP in
+    hfsplus)
+        _notrun "Sparse files not supported by this filesystem type: $FSTYP"
+       ;;
+    *)
+        ;;
+    esac
+}
+
 # check that a FS on a device is mounted
 # if so, return mount point
 #
Index: xfstests-dev/239
===================================================================
--- xfstests-dev.orig/239       2010-11-09 11:30:18.000000000 +0000
+++ xfstests-dev/239    2010-11-09 11:30:23.000000000 +0000
@@ -45,6 +45,8 @@ _cleanup()
 _supported_fs generic
 _supported_os Linux
 
+_require_sparse_files
+
 AIO_TEST=src/aio-dio-regress/aio-dio-hole-filling-race
 [ -x $AIO_TEST ] || _notrun "$AIO_TEST not built"
 

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