test for deadlocks with concurrent I/O.

Merge of master-melb:xfs-cmds:26927a by kenmcd.

  test for deadlocks with concurrent I/O.
This commit is contained in:
Lachlan McIlroy
2006-09-06 03:53:22 +00:00
parent 79216d0458
commit 89ea021141
3 changed files with 72 additions and 1 deletions
Executable
+65
View File
@@ -0,0 +1,65 @@
#! /bin/sh
# FSQA Test No. 133
#
# Concurrent I/O to same file to ensure no deadlocks
#
#-----------------------------------------------------------------------
# Copyright (c) 2006 Silicon Graphics, Inc. All Rights Reserved.
#-----------------------------------------------------------------------
#
# creator
owner=lachlan@sgi.com
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()
{
_cleanup_testdir
}
# get standard environment, filters and checks
. ./common.rc
. ./common.filter
# real QA test starts here
_supported_fs xfs
_supported_os Linux IRIX
_setup_testdir
echo "Buffered writer, buffered reader"
xfs_io -f -c 'pwrite -q -b 64k 0 512m' $testdir/io_test &
sleep 1
xfs_io -c 'pread -q -b 64k 0 512m' $testdir/io_test
wait
rm $testdir/io_test
echo "Direct writer, buffered reader"
xfs_io -f -d -c 'pwrite -q -b 64k 0 512m' $testdir/io_test &
sleep 1
xfs_io -c 'pread -q -b 64k 0 512m' $testdir/io_test
wait
rm $testdir/io_test
echo "Buffered writer, direct reader"
xfs_io -f -c 'pwrite -q -b 64k 0 512m' $testdir/io_test &
sleep 1
xfs_io -d -c 'pread -q -b 64k 0 512m' $testdir/io_test
wait
rm $testdir/io_test
echo "Direct writer, direct reader"
xfs_io -f -d -c 'pwrite -q -b 64k 0 512m' $testdir/io_test &
sleep 1
xfs_io -d -c 'pread -q -b 64k 0 512m' $testdir/io_test
wait
rm $testdir/io_test
status=0
exit