xfs
[Top] [All Lists]

[PATCH] generic: require filesize to be greater than fs block size in ge

To: xfs@xxxxxxxxxxx
Subject: [PATCH] generic: require filesize to be greater than fs block size in generic/240
From: Stanislav Kholmanskikh <stanislav.kholmanskikh@xxxxxxxxxx>
Date: Fri, 6 Dec 2013 13:24:05 +0400
Cc: vasily.isaenko@xxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
If we execute generic/240 on a fs which has its fs block size greater
than 64k (for example, NFS), this test will fail with:

  io_submit failed: Invalid argument

This will happen because in src/aio-dio-regress/aiodio_sparse2.c this
expression

  num_aio = filesize / step;

will set num_aio to 0 and this means that no io_setup() will happen
before calling io_submit().

Signed-off-by: Stanislav Kholmanskikh <stanislav.kholmanskikh@xxxxxxxxxx>
---
 tests/generic/240 |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/tests/generic/240 b/tests/generic/240
index e26f495..acf0515 100755
--- a/tests/generic/240
+++ b/tests/generic/240
@@ -62,14 +62,19 @@ rm -f $TEST_DIR/aiodio_sparse
 
 logical_block_size=`_min_dio_alignment $TEST_DEV`
 fs_block_size=`stat -f $TEST_DIR | grep "Block size:" | awk '{print $3}'`
+file_size=65536
 
 if [ $fs_block_size -le $logical_block_size ]; then
        _notrun "fs block size must be larger than the device block size.  fs 
block size: $fs_block_size, device block size: $logical_block_size"
 fi
 
-# 2 threads, fs block sized writes, 64k filesize, stride through file by
+if [ $file_size -lt $fs_block_size ]; then
+       file_size=$fs_block_size
+fi
+
+# 2 threads, fs block sized writes, filesize, stride through file by
 # fs block size, start at logical block size offset
-$AIO_TEST -i 2 -w $fs_block_size -s 64k -n $fs_block_size -o 
$logical_block_size "$TEST_DIR/aiodio_sparse"
+$AIO_TEST -i 2 -w $fs_block_size -s $file_size -n $fs_block_size -o 
$logical_block_size "$TEST_DIR/aiodio_sparse"
 
 status=$?
 exit
-- 
1.7.1

<Prev in Thread] Current Thread [Next in Thread>