mirror of
https://github.com/linux-apfs/apfstests.git
synced 2026-05-01 15:01:44 -07:00
xfstests: add a helper to get the minimum dio size
Various tests opencode checks to find out the minimum support direct I/O size. Replace those with a generic helper that handles network filesystems as well. Also remove the Linux 2.4 workaround we had in once place. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Eric Sandeen <sandeen@redhat.com> Signed-off-by: Rich Johnston <rjohnston@sgi.com>
This commit is contained in:
committed by
Rich Johnston
parent
6bd85c0a99
commit
50e2a514d9
@@ -2179,6 +2179,21 @@ _scale_fsstress_args()
|
||||
echo $args
|
||||
}
|
||||
|
||||
#
|
||||
# Return the logical block size if running on a block device,
|
||||
# else substitute the page size.
|
||||
#
|
||||
_min_dio_alignment()
|
||||
{
|
||||
dev=$1
|
||||
|
||||
if [ -b "$dev" ]; then
|
||||
blockdev --getss $dev
|
||||
else
|
||||
$here/src/feature -s
|
||||
fi
|
||||
}
|
||||
|
||||
run_check()
|
||||
{
|
||||
echo "# $@" >> $seqres.full 2>&1
|
||||
|
||||
+1
-5
@@ -54,11 +54,7 @@ run_fsx()
|
||||
}
|
||||
|
||||
psize=`$here/src/feature -s`
|
||||
bsize=`blockdev --getss $TEST_DEV`
|
||||
kernel=`uname -r | sed -e 's/\(2\..\).*/\1/'`
|
||||
|
||||
# 2.4 Linux kernels support bsize aligned direct I/O only
|
||||
[ "$HOSTOS" = "Linux" -a "$kernel" = "2.4" ] && bsize=$psize
|
||||
bsize=`_min_dio_alignment $TEST_DEV`
|
||||
|
||||
# fsx usage:
|
||||
#
|
||||
|
||||
+1
-1
@@ -60,7 +60,7 @@ rm -f $seqres.full
|
||||
|
||||
rm -f $TEST_DIR/aiodio_sparse
|
||||
|
||||
logical_block_size=`blockdev --getss $TEST_DEV`
|
||||
logical_block_size=`_min_dio_alignment $TEST_DEV`
|
||||
fs_block_size=`stat -f $TEST_DIR | grep "Block size:" | awk '{print $3}'`
|
||||
|
||||
if [ $fs_block_size -le $logical_block_size ]; then
|
||||
|
||||
+1
-1
@@ -54,7 +54,7 @@ run_fsx()
|
||||
}
|
||||
|
||||
psize=`$here/src/feature -s`
|
||||
bsize=`blockdev --getss $TEST_DEV`
|
||||
bsize=`_min_dio_alignment $TEST_DEV`
|
||||
|
||||
run_fsx -N 10000 -o 8192 -l 500000 -r PSIZE -t BSIZE -w BSIZE -Z
|
||||
run_fsx -N 10000 -o 128000 -l 500000 -r PSIZE -t BSIZE -w BSIZE -Z
|
||||
|
||||
Reference in New Issue
Block a user