]> git.apps.os.sepia.ceph.com Git - xfstests-dev.git/commitdiff
xfs/196: fallback to fail_writes for old kernel
authorZorro Lang <zlang@redhat.com>
Wed, 24 May 2017 14:52:58 +0000 (22:52 +0800)
committerEryu Guan <eguan@redhat.com>
Thu, 25 May 2017 03:09:39 +0000 (11:09 +0800)
linux XFS rename all "fail_writes" references to "drop_writes" in
v4.11. Some old kernel still use the name "fail_writes", e.g.
RHEL-7. For testing on old kernel, we need to fallback to
"fail_writes".

Signed-off-by: Zorro Lang <zlang@redhat.com>
Reviewed-by: Eryu Guan <eguan@redhat.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
tests/xfs/196

index b7d327e50a94250422a5a7a3928bc5500cd5f8b1..e9b0649b8972bdd4a467a31adc39446d78b00f38 100755 (executable)
@@ -53,7 +53,13 @@ rm -f $seqres.full
 _supported_fs generic
 _supported_os Linux
 _require_scratch
-_require_xfs_sysfs $(_short_dev $TEST_DEV)/drop_writes
+
+DROP_WRITES="drop_writes"
+# replace "drop_writes" with "fail_writes" for old kernel
+if [ -f /sys/fs/xfs/$(_short_dev $TEST_DEV)/fail_writes ];then
+       DROP_WRITES="fail_writes"
+fi
+_require_xfs_sysfs $(_short_dev $TEST_DEV)/${DROP_WRITES}
 
 _scratch_mkfs >/dev/null 2>&1
 _scratch_mount
@@ -66,7 +72,7 @@ bytes=$((64 * 1024))
 $XFS_IO_PROG -f -c "pwrite 0 $bytes" $file >> $seqres.full 2>&1
 
 # Enable write drops. All buffered writes are dropped from this point on.
-echo 1 > /sys/fs/xfs/$sdev/drop_writes
+echo 1 > /sys/fs/xfs/$sdev/$DROP_WRITES
 
 # Write every other 4k range to split the larger delalloc extent into many more
 # smaller extents. Use pwrite because with write failures enabled, all
@@ -83,7 +89,7 @@ for i in $(seq 4096 8192 $endoff); do
        $XFS_IO_PROG -c "pwrite $i 4k" $file >> $seqres.full 2>&1
 done
 
-echo 0 > /sys/fs/xfs/$sdev/drop_writes
+echo 0 > /sys/fs/xfs/$sdev/$DROP_WRITES
 
 _scratch_cycle_mount
 $XFS_IO_PROG -c 'bmap -vp' $file | _filter_bmap
@@ -98,9 +104,9 @@ for offset in $(seq 0 100 500); do
        $XFS_IO_PROG -fc "pwrite ${offset}m 100m" $file >> $seqres.full 2>&1
 
        punchoffset=$((offset + 75))
-       echo 1 > /sys/fs/xfs/$sdev/drop_writes
+       echo 1 > /sys/fs/xfs/$sdev/$DROP_WRITES
        $XFS_IO_PROG -c "pwrite ${punchoffset}m 4k" $file >> $seqres.full 2>&1
-       echo 0 > /sys/fs/xfs/$sdev/drop_writes
+       echo 0 > /sys/fs/xfs/$sdev/$DROP_WRITES
 done
 
 echo "Silence is golden."