diff options
author | Dave Chinner <dchinner@redhat.com> | 2013-03-15 12:27:57 +0000 |
---|---|---|
committer | Rich Johnston <rjohnston@sgi.com> | 2013-03-26 18:27:34 -0500 |
commit | fc48dfb96676c140ab371ab7723d59e3a4445d84 (patch) | |
tree | a4f94b48499b2fdeb962bb9581fa06250d487760 /tests/xfs/250 | |
parent | 797e625f28215709b9fe9fe57f70fa0ae250a327 (diff) |
xfstests: move xfs specific tests out of top directory
And into tests/xfs. Tests found and moved via:
$ grep "supported_fs xfs$" [0-2]* | cut -d : -f 1 > xfs.tests
$ for i in `cat xfs.tests`; do
> git mv $i* tests/xfs/
> grep ^$i group >> tests/xfs/group
> sed -i -e "/^$i/d" group
> done
Output now looks like:
sudo ./check -g quick -r
FSTYP -- xfs (debug)
PLATFORM -- Linux/x86_64 test-1 3.5.0-rc5-dgc+
MKFS_OPTIONS -- -f -bsize=4096 /dev/vdb
MOUNT_OPTIONS -- /dev/vdb /mnt/scratch
xfs/170 4s
generic/120 16s
generic/248 0s
generic/213 0s
generic/256 39s
xfs/121 6s
xfs/026 11s
generic/131 1s
xfs/187 1s
generic/135 0s
....
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Phil White <pwhite@sgi.com>
[rjohnston@sgi.com did not move test 032, belongs in shared]
Signed-off-by: Rich Johnston <rjohnston@sgi.com>
Diffstat (limited to 'tests/xfs/250')
-rwxr-xr-x | tests/xfs/250 | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/tests/xfs/250 b/tests/xfs/250 new file mode 100755 index 00000000..2dd12e82 --- /dev/null +++ b/tests/xfs/250 @@ -0,0 +1,95 @@ +#! /bin/bash +# FS QA Test No. 250 +# +# Bmap btree corruption regression test +# +#----------------------------------------------------------------------- +# Copyright (c) 2011 Red Hat, Inc. All Rights Reserved. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation. +# +# This program is distributed in the hope that it would be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +#----------------------------------------------------------------------- +# + +seq=`basename $0` +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 / + umount -d $LOOP_MNT 2>/dev/null + rm -f $LOOP_DEV + rmdir $LOOP_MNT + _cleanup_testdir +} + +# get standard environment, filters and checks +. ./common.rc +. ./common.filter + +# real QA test starts here +_supported_fs xfs +_supported_os Linux +_require_loop + +LOOP_DEV=$TEST_DIR/$seq.fs +LOOP_MNT=$TEST_DIR/$seq.mnt + +_filter_io() +{ + sed -e '/.* ops; /d' +} + +# real QA test starts here + +echo "*** create loop mount point" +rmdir $LOOP_MNT 2>/dev/null +mkdir -p $LOOP_MNT || _fail "cannot create loopback mount point" + +_test_loop() +{ + size=$1 + agsize=$2 + fsize=$3 + + dparam="file,name=$LOOP_DEV,size=$size" + if [ -n "$agsize" ]; then + dparam="$dparam,agsize=$agsize" + fi + + echo "*** mkfs loop file (size=$size)" + $MKFS_XFS_PROG -d $dparam \ + | _filter_mkfs 2>/dev/null + + echo "*** mount loop filesystem" + mount -t xfs -o loop $LOOP_DEV $LOOP_MNT + + echo "*** preallocate large file" + xfs_io -f -c "resvsp 0 $fsize" $LOOP_MNT/foo | _filter_io + + echo "*** unmount loop filesystem" + umount -d $LOOP_MNT > /dev/null 2>&1 + + echo "*** check loop filesystem" + _check_xfs_filesystem $LOOP_DEV none none +} + +_test_loop 50g 16m 40G +echo "*** done" +status=0 +exit |