xfsqa: test 214 leaves files around that cause 236 to fail

Test 214 and 236 use the same file names for test files in the TEST
filesystem and don't check/create clean initial test state. Hence if
you run 214 then 236, 236 will fail with:

+link: cannot create link `/mnt/test/ouch2' to `/mnt/test/ouch': File exists
+ctime: 1277076527 -> 1277076527 
+Fatal error: ctime not updated after link

Ensure that both tests clean up after themselves properly and also
ensure a clean state before they start.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
Dave Chinner
2010-06-25 08:25:56 +10:00
committed by Dave Chinner
parent 794798fa74
commit 44e51274c7
2 changed files with 7 additions and 8 deletions
+2
View File
@@ -29,6 +29,7 @@ echo "QA output created by $seq"
_cleanup() _cleanup()
{ {
rm -f $TEST_DIR/ouch*
cd / cd /
rm -f $tmp.* rm -f $tmp.*
} }
@@ -51,6 +52,7 @@ _supported_os Linux
[ -n "$XFS_IO_PROG" ] || _notrun "xfs_io executable not found" [ -n "$XFS_IO_PROG" ] || _notrun "xfs_io executable not found"
rm -f $seq.full rm -f $seq.full
rm -f $TEST_DIR/ouch*
_require_xfs_io_falloc _require_xfs_io_falloc
+5 -8
View File
@@ -30,15 +30,12 @@ echo "QA output created by $seq"
_cleanup() _cleanup()
{ {
if [ -a $TEST_DIR/ouch2 ]; then rm -f $TEST_DIR/ouch*
rm -f $TEST_DIR/ouch2
fi
if [ -a $TEST_DIR/ouch ]; then
rm -f $TEST_DIR/ouch
fi
} }
here=`pwd` here=`pwd`
status=1 # failure is the default!
trap "_cleanup; exit \$status" 0 1 2 3 15
# get standard environment, filters and checks # get standard environment, filters and checks
. ./common.rc . ./common.rc
@@ -48,6 +45,8 @@ _supported_fs generic
# only Linux supports fallocate # only Linux supports fallocate
_supported_os Linux _supported_os Linux
rm -f $TEST_DIR/ouch*
# create a file and get its ctime # create a file and get its ctime
touch $TEST_DIR/ouch touch $TEST_DIR/ouch
ctime=`stat -c %Z $TEST_DIR/ouch` ctime=`stat -c %Z $TEST_DIR/ouch`
@@ -65,8 +64,6 @@ if [ $ctime2 -le $ctime ]; then
exit 1 exit 1
fi fi
_cleanup
echo "Test over." echo "Test over."
# success, all done # success, all done
status=0 status=0