From: Xiao Yang Date: Wed, 15 Aug 2018 05:41:45 +0000 (+0800) Subject: fstests: Fix buffer alignment of aiocp X-Git-Tag: v2022.05.01~1435 X-Git-Url: http://git.apps.os.sepia.ceph.com/?p=xfstests-dev.git;a=commitdiff_plain;h=84fdfc5d8a1c94e08245152e02679b9a5d2d3aa3 fstests: Fix buffer alignment of aiocp In generic/252, aiocp with DIRECT will fail and return EINVAL on 4096 sector size block device, because the default 512 alignment defined in aiocp is not aligned with 4096. Please see the following error: ---------------------------------------------------------- read missing bytes expect 8388608 got -22 ---------------------------------------------------------- We use '-a' option to specify a proper alignment size in all tests that call aiocp with DIRECT. Signed-off-by: Xiao Yang Reviewed-by: Eryu Guan Signed-off-by: Eryu Guan --- diff --git a/tests/generic/252 b/tests/generic/252 index 9e7f4420..991bbe3e 100755 --- a/tests/generic/252 +++ b/tests/generic/252 @@ -59,6 +59,7 @@ nr=640 bufnr=128 filesize=$((blksz * nr)) bufsize=$((blksz * bufnr)) +alignment=`_min_dio_alignment $TEST_DEV` _require_fs_space $SCRATCH_MNT $((filesize / 1024 * 5 / 4)) @@ -75,7 +76,7 @@ $XFS_IO_PROG -f -c "pwrite -S 0x63 $bufsize 1" $testdir/file2 >> $seqres.full $XFS_IO_PROG -f -c "pwrite -S 0x63 -b $bufsize 0 $filesize" $TEST_DIR/moo >> $seqres.full sync _dmerror_load_error_table -$AIO_TEST -f DIRECT -b $bufsize $TEST_DIR/moo $testdir/file2 >> $seqres.full +$AIO_TEST -a $alignment -f DIRECT -b $bufsize $TEST_DIR/moo $testdir/file2 >> $seqres.full _dmerror_load_working_table _dmerror_unmount _dmerror_mount diff --git a/tests/generic/329 b/tests/generic/329 index c68d94ac..c618c2a7 100755 --- a/tests/generic/329 +++ b/tests/generic/329 @@ -51,6 +51,7 @@ nr=640 bufnr=128 filesize=$((blksz * nr)) bufsize=$((blksz * bufnr)) +alignment=`_min_dio_alignment $TEST_DEV` _require_fs_space $SCRATCH_MNT $((filesize / 1024 * 3 * 5 / 4)) @@ -69,7 +70,7 @@ $XFS_IO_PROG -f -c "pwrite -S 0x63 $bufsize 1" $testdir/file2 >> $seqres.full $XFS_IO_PROG -f -c "pwrite -S 0x63 -b $bufsize 0 $filesize" $TEST_DIR/moo >> $seqres.full sync _dmerror_load_error_table -$AIO_TEST -f DIRECT -b $bufsize $TEST_DIR/moo $testdir/file2 >> $seqres.full +$AIO_TEST -a $alignment -f DIRECT -b $bufsize $TEST_DIR/moo $testdir/file2 >> $seqres.full _dmerror_load_working_table _dmerror_unmount _dmerror_mount diff --git a/tests/generic/330 b/tests/generic/330 index 334ac3c7..7183d4c7 100755 --- a/tests/generic/330 +++ b/tests/generic/330 @@ -47,6 +47,7 @@ nr=640 bufnr=128 filesize=$((blksz * nr)) bufsize=$((blksz * bufnr)) +alignment=`_min_dio_alignment $TEST_DEV` _require_fs_space $SCRATCH_MNT $((filesize / 1024 * 3 * 5 / 4)) @@ -63,7 +64,7 @@ echo "CoW and unmount" $XFS_IO_PROG -f -c "pwrite -S 0x63 $bufsize 1" $testdir/file2 >> $seqres.full sync $XFS_IO_PROG -f -c "pwrite -S 0x63 -b $bufsize 0 $filesize" $TEST_DIR/moo >> $seqres.full -$AIO_TEST -f DIRECT -b $bufsize $TEST_DIR/moo $testdir/file2 >> $seqres.full +$AIO_TEST -a $alignment -f DIRECT -b $bufsize $TEST_DIR/moo $testdir/file2 >> $seqres.full _scratch_cycle_mount echo "Compare files" diff --git a/tests/xfs/237 b/tests/xfs/237 index 286fd687..94855f5f 100755 --- a/tests/xfs/237 +++ b/tests/xfs/237 @@ -53,6 +53,7 @@ nr=640 bufnr=128 filesize=$((blksz * nr)) bufsize=$((blksz * bufnr)) +alignment=`_min_dio_alignment $TEST_DEV` _require_fs_space $SCRATCH_MNT $((filesize / 1024 * 3 * 5 / 4)) @@ -72,7 +73,7 @@ $XFS_IO_PROG -f -c "pwrite -S 0x63 $bufsize 1" $testdir/file2 >> $seqres.full $XFS_IO_PROG -f -c "pwrite -S 0x63 -b $bufsize 0 $filesize" $TEST_DIR/moo >> $seqres.full sync _dmerror_load_error_table -$AIO_TEST -f DIRECT -b $bufsize $TEST_DIR/moo $testdir/file2 >> $seqres.full +$AIO_TEST -a $alignment -f DIRECT -b $bufsize $TEST_DIR/moo $testdir/file2 >> $seqres.full _dmerror_load_working_table _dmerror_unmount _dmerror_mount diff --git a/tests/xfs/239 b/tests/xfs/239 index 6a13319b..afe0d568 100755 --- a/tests/xfs/239 +++ b/tests/xfs/239 @@ -51,6 +51,7 @@ filesize=$((blksz * nr)) bufsize=$((blksz * bufnr)) filesize=$filesize bufsize=$bufsize +alignment=`_min_dio_alignment $TEST_DEV` _require_fs_space $SCRATCH_MNT $((filesize / 1024 * 3 * 5 / 4)) @@ -68,7 +69,7 @@ echo "CoW and unmount" $XFS_IO_PROG -f -c "pwrite -S 0x63 $bufsize 1" $testdir/file2 >> $seqres.full sync $XFS_IO_PROG -f -c "pwrite -S 0x63 -b $bufsize 0 $filesize" $TEST_DIR/moo >> $seqres.full -$AIO_TEST -f DIRECT -b $bufsize $TEST_DIR/moo $testdir/file2 >> $seqres.full +$AIO_TEST -a $alignment -f DIRECT -b $bufsize $TEST_DIR/moo $testdir/file2 >> $seqres.full _scratch_cycle_mount echo "Compare files"