shared/011: move to generic/
authorChristoph Hellwig <hch@lst.de>
Mon, 15 Jul 2019 08:25:23 +0000 (10:25 +0200)
committerEryu Guan <guaneryu@gmail.com>
Sun, 21 Jul 2019 13:27:51 +0000 (21:27 +0800)
Now that we run the test for all block device based file systems, there
is no reason to keep it out of generic.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eryu Guan <guaneryu@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
tests/generic/563 [new file with mode: 0755]
tests/generic/563.out [new file with mode: 0644]
tests/generic/group
tests/shared/011 [deleted file]
tests/shared/011.out [deleted file]
tests/shared/group

diff --git a/tests/generic/563 b/tests/generic/563
new file mode 100755 (executable)
index 0000000..b4cdc5e
--- /dev/null
@@ -0,0 +1,144 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (c) 2019 Red Hat, Inc.  All Rights Reserved.
+#
+# FS QA Test No. 011
+#
+# This test verifies that cgroup aware writeback properly accounts I/Os in
+# various scenarios. We perform reads/writes from different combinations of
+# cgroups and verify that pages are accounted against the group that brought
+# them into cache.
+#
+
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+here=`pwd`
+tmp=/tmp/$$
+status=1       # failure is the default!
+trap "_cleanup; exit \$status" 0 1 2 3 15
+
+_cleanup()
+{
+       cd /
+       rm -f $tmp.*
+
+       echo $$ > $cgdir/cgroup.procs
+       rmdir $cgdir/$seq-cg* > /dev/null 2>&1
+}
+
+# get standard environment, filters and checks
+. ./common/rc
+. ./common/filter
+. ./common/cgroup2
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# real QA test starts here
+
+# Modify as appropriate.
+_supported_fs generic
+_supported_os Linux
+_require_scratch
+_require_cgroup2 io
+
+# cgroup v2 writeback is only support on block devices so far
+_require_block_device $SCRATCH_DEV
+
+smajor=$((0x`stat -L -c %t $SCRATCH_DEV`))
+sminor=$((0x`stat -L -c %T $SCRATCH_DEV`))
+cgdir=$CGROUP2_PATH
+
+iosize=$((1024 * 1024 * 8))
+
+# Check cgroup read/write charges against expected values. Allow for some
+# tolerance as different filesystems seem to account slightly differently.
+check_cg()
+{
+       cgroot=$1
+       cgname=$(basename $cgroot)
+       expectedread=$2
+       expectedwrite=$3
+       rbytes=0
+       wbytes=0
+
+       iobytes=`cat $cgroot/io.stat | grep $smajor:$sminor`
+       if [ $? == 0 ]; then
+               rbytes=`echo $iobytes | awk '{ print $2 }' | \
+                       awk -F = '{ print $2 }'`
+               wbytes=`echo $iobytes | awk '{ print $3 }' | \
+                       awk -F = '{ print $2 }'`
+       fi
+
+       _within_tolerance "read" $rbytes $expectedread 5% -v
+       _within_tolerance "write" $wbytes $expectedwrite 5% -v
+}
+
+# Move current process to another cgroup.
+switch_cg()
+{
+       mkdir -p $1
+       echo $$ > $1/cgroup.procs
+}
+
+# Reset cgroup state for a new test.
+reset()
+{
+       echo $$ > $cgdir/cgroup.procs
+       rmdir $cgdir/$seq-cg* > /dev/null 2>&1
+       $XFS_IO_PROG -fc "pwrite 0 $iosize" $SCRATCH_MNT/file \
+               >> $seqres.full 2>&1
+       _scratch_cycle_mount || _fail "mount failed"
+       stat $SCRATCH_MNT/file > /dev/null
+}
+
+_scratch_mkfs >> $seqres.full 2>&1
+_scratch_mount
+
+echo "+io" > $cgdir/cgroup.subtree_control || _fail "subtree control"
+
+# Read and write from a single group.
+echo "read/write"
+reset
+switch_cg $cgdir/$seq-cg
+$XFS_IO_PROG -c "pread 0 $iosize" -c "pwrite 0 $iosize" -c fsync \
+       $SCRATCH_MNT/file >> $seqres.full 2>&1
+switch_cg $cgdir
+$XFS_IO_PROG -c fsync $SCRATCH_MNT/file
+check_cg $cgdir/$seq-cg $iosize $iosize
+
+# Write from one cgroup then read and write from a second. Writes are charged to
+# the first group and nothing to the second.
+echo "write -> read/write"
+reset
+switch_cg $cgdir/$seq-cg
+$XFS_IO_PROG -c "pwrite 0 $iosize" $SCRATCH_MNT/file >> $seqres.full 2>&1
+switch_cg $cgdir/$seq-cg-2
+$XFS_IO_PROG -c "pread 0 $iosize" -c "pwrite 0 $iosize" $SCRATCH_MNT/file \
+       >> $seqres.full 2>&1
+switch_cg $cgdir
+$XFS_IO_PROG -c fsync $SCRATCH_MNT/file
+check_cg $cgdir/$seq-cg 0 $iosize
+check_cg $cgdir/$seq-cg-2 0 0
+
+# Read from one cgroup, read & write from a second. Both reads and writes are
+# charged to the first group and nothing to the second.
+echo "read -> read/write"
+reset
+switch_cg $cgdir/$seq-cg
+$XFS_IO_PROG -c "pread 0 $iosize" $SCRATCH_MNT/file >> $seqres.full 2>&1
+switch_cg $cgdir/$seq-cg-2
+$XFS_IO_PROG -c "pread 0 $iosize" -c "pwrite 0 $iosize" $SCRATCH_MNT/file \
+       >> $seqres.full 2>&1
+switch_cg $cgdir
+$XFS_IO_PROG -c fsync $SCRATCH_MNT/file
+check_cg $cgdir/$seq-cg $iosize $iosize
+check_cg $cgdir/$seq-cg-2 0 0
+
+echo "-io" > $cgdir/cgroup.subtree_control || _fail "subtree control"
+
+# success, all done
+status=0
+exit
diff --git a/tests/generic/563.out b/tests/generic/563.out
new file mode 100644 (file)
index 0000000..277f4bc
--- /dev/null
@@ -0,0 +1,14 @@
+QA output created by 011
+read/write
+read is in range
+write is in range
+write -> read/write
+read is in range
+write is in range
+read is in range
+write is in range
+read -> read/write
+read is in range
+write is in range
+read is in range
+write is in range
index 9ceaf317031ca0f3644b95e53bfb929a50b78a81..284a1d936d03f4e34577441b11b02488f0313bd7 100644 (file)
 560 auto stress dedupe
 561 auto stress dedupe
 562 auto clone
+563 auto quick
diff --git a/tests/shared/011 b/tests/shared/011
deleted file mode 100755 (executable)
index b4cdc5e..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-#! /bin/bash
-# SPDX-License-Identifier: GPL-2.0
-# Copyright (c) 2019 Red Hat, Inc.  All Rights Reserved.
-#
-# FS QA Test No. 011
-#
-# This test verifies that cgroup aware writeback properly accounts I/Os in
-# various scenarios. We perform reads/writes from different combinations of
-# cgroups and verify that pages are accounted against the group that brought
-# them into cache.
-#
-
-seq=`basename $0`
-seqres=$RESULT_DIR/$seq
-echo "QA output created by $seq"
-
-here=`pwd`
-tmp=/tmp/$$
-status=1       # failure is the default!
-trap "_cleanup; exit \$status" 0 1 2 3 15
-
-_cleanup()
-{
-       cd /
-       rm -f $tmp.*
-
-       echo $$ > $cgdir/cgroup.procs
-       rmdir $cgdir/$seq-cg* > /dev/null 2>&1
-}
-
-# get standard environment, filters and checks
-. ./common/rc
-. ./common/filter
-. ./common/cgroup2
-
-# remove previous $seqres.full before test
-rm -f $seqres.full
-
-# real QA test starts here
-
-# Modify as appropriate.
-_supported_fs generic
-_supported_os Linux
-_require_scratch
-_require_cgroup2 io
-
-# cgroup v2 writeback is only support on block devices so far
-_require_block_device $SCRATCH_DEV
-
-smajor=$((0x`stat -L -c %t $SCRATCH_DEV`))
-sminor=$((0x`stat -L -c %T $SCRATCH_DEV`))
-cgdir=$CGROUP2_PATH
-
-iosize=$((1024 * 1024 * 8))
-
-# Check cgroup read/write charges against expected values. Allow for some
-# tolerance as different filesystems seem to account slightly differently.
-check_cg()
-{
-       cgroot=$1
-       cgname=$(basename $cgroot)
-       expectedread=$2
-       expectedwrite=$3
-       rbytes=0
-       wbytes=0
-
-       iobytes=`cat $cgroot/io.stat | grep $smajor:$sminor`
-       if [ $? == 0 ]; then
-               rbytes=`echo $iobytes | awk '{ print $2 }' | \
-                       awk -F = '{ print $2 }'`
-               wbytes=`echo $iobytes | awk '{ print $3 }' | \
-                       awk -F = '{ print $2 }'`
-       fi
-
-       _within_tolerance "read" $rbytes $expectedread 5% -v
-       _within_tolerance "write" $wbytes $expectedwrite 5% -v
-}
-
-# Move current process to another cgroup.
-switch_cg()
-{
-       mkdir -p $1
-       echo $$ > $1/cgroup.procs
-}
-
-# Reset cgroup state for a new test.
-reset()
-{
-       echo $$ > $cgdir/cgroup.procs
-       rmdir $cgdir/$seq-cg* > /dev/null 2>&1
-       $XFS_IO_PROG -fc "pwrite 0 $iosize" $SCRATCH_MNT/file \
-               >> $seqres.full 2>&1
-       _scratch_cycle_mount || _fail "mount failed"
-       stat $SCRATCH_MNT/file > /dev/null
-}
-
-_scratch_mkfs >> $seqres.full 2>&1
-_scratch_mount
-
-echo "+io" > $cgdir/cgroup.subtree_control || _fail "subtree control"
-
-# Read and write from a single group.
-echo "read/write"
-reset
-switch_cg $cgdir/$seq-cg
-$XFS_IO_PROG -c "pread 0 $iosize" -c "pwrite 0 $iosize" -c fsync \
-       $SCRATCH_MNT/file >> $seqres.full 2>&1
-switch_cg $cgdir
-$XFS_IO_PROG -c fsync $SCRATCH_MNT/file
-check_cg $cgdir/$seq-cg $iosize $iosize
-
-# Write from one cgroup then read and write from a second. Writes are charged to
-# the first group and nothing to the second.
-echo "write -> read/write"
-reset
-switch_cg $cgdir/$seq-cg
-$XFS_IO_PROG -c "pwrite 0 $iosize" $SCRATCH_MNT/file >> $seqres.full 2>&1
-switch_cg $cgdir/$seq-cg-2
-$XFS_IO_PROG -c "pread 0 $iosize" -c "pwrite 0 $iosize" $SCRATCH_MNT/file \
-       >> $seqres.full 2>&1
-switch_cg $cgdir
-$XFS_IO_PROG -c fsync $SCRATCH_MNT/file
-check_cg $cgdir/$seq-cg 0 $iosize
-check_cg $cgdir/$seq-cg-2 0 0
-
-# Read from one cgroup, read & write from a second. Both reads and writes are
-# charged to the first group and nothing to the second.
-echo "read -> read/write"
-reset
-switch_cg $cgdir/$seq-cg
-$XFS_IO_PROG -c "pread 0 $iosize" $SCRATCH_MNT/file >> $seqres.full 2>&1
-switch_cg $cgdir/$seq-cg-2
-$XFS_IO_PROG -c "pread 0 $iosize" -c "pwrite 0 $iosize" $SCRATCH_MNT/file \
-       >> $seqres.full 2>&1
-switch_cg $cgdir
-$XFS_IO_PROG -c fsync $SCRATCH_MNT/file
-check_cg $cgdir/$seq-cg $iosize $iosize
-check_cg $cgdir/$seq-cg-2 0 0
-
-echo "-io" > $cgdir/cgroup.subtree_control || _fail "subtree control"
-
-# success, all done
-status=0
-exit
diff --git a/tests/shared/011.out b/tests/shared/011.out
deleted file mode 100644 (file)
index 277f4bc..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-QA output created by 011
-read/write
-read is in range
-write is in range
-write -> read/write
-read is in range
-write is in range
-read is in range
-write is in range
-read -> read/write
-read is in range
-write is in range
-read is in range
-write is in range
index 6112c8dde89f05bee6037fc39e149db6e95d9ab0..a8b926d877d299a1c4269f46416006f8d5baa923 100644 (file)
@@ -4,6 +4,5 @@
 # - comment line before each group is "new" description
 #
 002 auto metadata quick log
-011 auto quick
 032 mkfs auto quick
 298 auto trim