Add a test for ENOSPC when fallocating.
authorEric Sandeen <sandeen@redhat.com>
Wed, 25 Nov 2009 22:12:09 +0000 (16:12 -0600)
committerEric Sandeen <sandeen@redhat.com>
Wed, 25 Nov 2009 22:12:09 +0000 (16:12 -0600)
Also, add an expected output, not sure how that went missing!

Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
Reviewed-by: Christoph Hellwig <hch@lst.de>
213
213.out [new file with mode: 0644]
group

diff --git a/213 b/213
index 3cd55f7b2e5250a4adfce8765a7e2c6045662363..7d663388ca86b853ee7eeaf7a0e9eb5d7e550234 100755 (executable)
--- a/213
+++ b/213
@@ -61,8 +61,6 @@ _require_xfs_io_falloc
 avail=`df -P $TEST_DIR | awk 'END {print $4}'`
 [ "$avail" -ge 1049600 ] || _notrun "Test device is too small ($avail KiB)"
 
 avail=`df -P $TEST_DIR | awk 'END {print $4}'`
 [ "$avail" -ge 1049600 ] || _notrun "Test device is too small ($avail KiB)"
 
-echo Silence is golden
-
 # reserve 1GiB, truncate at 100bytes
 $XFS_IO_PROG -F -f -c 'falloc 0 1g' -c 'truncate 100' $TEST_DIR/ouch
 rm -f $TEST_DIR/ouch
 # reserve 1GiB, truncate at 100bytes
 $XFS_IO_PROG -F -f -c 'falloc 0 1g' -c 'truncate 100' $TEST_DIR/ouch
 rm -f $TEST_DIR/ouch
@@ -79,6 +77,14 @@ rm -f $TEST_DIR/ouch
 $XFS_IO_PROG -F -f -c 'falloc 0 1g' -c 'falloc 2g 1m' -c 'truncate 3g' $TEST_DIR/ouch
 rm -f $TEST_DIR/ouch
 
 $XFS_IO_PROG -F -f -c 'falloc 0 1g' -c 'falloc 2g 1m' -c 'truncate 3g' $TEST_DIR/ouch
 rm -f $TEST_DIR/ouch
 
+# Try to reserve more space than we have
+echo "We should get: fallocate: No space left on device"
+echo "Strangely, xfs_io sometimes says \"Success\" when something went wrong, FYI"
+
+let toobig=$avail*2
+$XFS_IO_PROG -F -f -c "falloc 0 ${toobig}k" $TEST_DIR/ouch
+rm -f $TEST_DIR/ouch
+
 # success, all done
 status=0
 exit
 # success, all done
 status=0
 exit
diff --git a/213.out b/213.out
new file mode 100644 (file)
index 0000000..521fca3
--- /dev/null
+++ b/213.out
@@ -0,0 +1,4 @@
+QA output created by 213
+We should get: fallocate: No space left on device
+Strangely, xfs_io sometimes says "Success" when something went wrong, FYI
+fallocate: No space left on device
diff --git a/group b/group
index b0254dda34fcbf24a8e2fad00de6f3b93ac11042..8d055a2132bc51db988df4ba17fb603e2179e138 100644 (file)
--- a/group
+++ b/group
@@ -322,7 +322,7 @@ prealloc
 210 auto aio quick
 211 auto aio quick
 212 auto aio quick
 210 auto aio quick
 211 auto aio quick
 212 auto aio quick
-213 rw auto prealloc quick
+213 rw auto prealloc quick enospc
 214 rw auto prealloc quick
 215 auto metadata quick
 216 log metadata auto quick
 214 rw auto prealloc quick
 215 auto metadata quick
 216 log metadata auto quick