Test 091 fails on sector size != 512 bytes

Test 091 assumes a direct I/O alignment of 512 bytes,
a hold over from 2.4 kernels. On 2.6. kernels, direct
I/O needs to be aligned to the sector size the filesystem
was mkfs'd with.
Merge of master-melb:xfs-cmds:30760a by kenmcd.

  Teach 091 about 2.6 kernels and grab the sector size from the
  xfs_info output.
This commit is contained in:
Dave Chinner
2008-04-08 04:00:40 +00:00
parent 6d91bcc8b9
commit a4d1721436
+11 -1
View File
@@ -43,10 +43,20 @@ run_fsx()
psize=`$here/src/feature -s` psize=`$here/src/feature -s`
bsize=512 bsize=512
# 2.4 Linux kernels support bsize aligned direct I/O only
kernel=`uname -r | sed -e 's/\(2\..\).*/\1/'` 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 [ "$HOSTOS" = "Linux" -a "$kernel" = "2.4" ] && bsize=$psize
# 2.6 Linux kernels support sector aligned direct I/O only
if [ "$HOSTOS" = "Linux" -a "$kernel" = "2.6" ]; then
xfs_info $TEST_DIR | _filter_mkfs 2> $tmp.info
if [ $? -eq 0 ]; then
source $tmp.info
bsize=$sectsz
fi
fi
# fsx usage: # fsx usage:
# #
# -N numops: total # operations to do # -N numops: total # operations to do