test 198, testcase for aio+dio writes into sparse files

Older kernels were not doing completion properly, and converting
unwritten extents at the wrong offsets; this exposed stale data.

Xen w/ the blktap driver was hitting this.

Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
Reviewed-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
Eric Sandeen
2008-12-31 13:06:23 +01:00
committed by Christoph Hellwig
parent 1d10ce2d5a
commit 8d7ac89a2d
3 changed files with 431 additions and 0 deletions
+45
View File
@@ -0,0 +1,45 @@
#! /bin/sh
# FS QA Test No. 198
#
# Test that aio+dio into holes does completion at the proper offsets
# See also https://bugzilla.redhat.com/show_bug.cgi?id=217098
#
#-----------------------------------------------------------------------
# Copyright (c) 2008 Eric Sandeen. All Rights Reserved.
#-----------------------------------------------------------------------
#
# creator
owner=sandeen@sandeen.net
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 /
rm -f $tmp.*
}
# get standard environment, filters and checks
. ./common.rc
. ./common.filter
# This should actually run on anything that supports O_DIRECT + AIO...
_supported_fs xfs
_supported_os Linux
echo "Silence is golden."
# real QA test starts here
rm -f $seq.full
rm -f "$TEST_DIR/aiodio_sparse*"
$here/src/aiodio_sparse2 "$TEST_DIR/aiodio_sparse"
status=$?
exit