qemu-iotests: More concurrent allocation scenarios
Signed-off-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
parent
142c6b1a89
commit
6f74928192
@ -66,7 +66,7 @@ function backing_io()
|
||||
done
|
||||
}
|
||||
|
||||
backing_io 0 16 write | $QEMU_IO $TEST_IMG | _filter_qemu_io
|
||||
backing_io 0 32 write | $QEMU_IO $TEST_IMG | _filter_qemu_io
|
||||
|
||||
mv $TEST_IMG $TEST_IMG.base
|
||||
|
||||
@ -153,6 +153,36 @@ aio_write -P 101 0xaa000 0xe000
|
||||
resume A
|
||||
aio_flush
|
||||
EOF
|
||||
|
||||
# Reverse sequential write
|
||||
cat <<EOF
|
||||
break write_aio A
|
||||
aio_write -P 121 0xdc000 0x2000
|
||||
wait_break A
|
||||
aio_write -P 120 0xc4000 0x18000
|
||||
resume A
|
||||
aio_flush
|
||||
EOF
|
||||
|
||||
# Reverse sequential write with a gap
|
||||
cat <<EOF
|
||||
break write_aio A
|
||||
aio_write -P 141 0xfc000 0x2000
|
||||
wait_break A
|
||||
aio_write -P 140 0xe4000 0x14000
|
||||
resume A
|
||||
aio_flush
|
||||
EOF
|
||||
|
||||
# Allocate an area in the middle and then overwrite with a larger request
|
||||
cat <<EOF
|
||||
break write_aio A
|
||||
aio_write -P 161 0x10c000 0x8000
|
||||
wait_break A
|
||||
aio_write -P 160 0x104000 0x18000
|
||||
resume A
|
||||
aio_flush
|
||||
EOF
|
||||
}
|
||||
|
||||
overlay_io | $QEMU_IO blkdebug::$TEST_IMG | _filter_qemu_io |\
|
||||
@ -203,6 +233,23 @@ function verify_io()
|
||||
echo read -P 10 0xa8000 0x2000
|
||||
echo read -P 101 0xaa000 0xe000
|
||||
echo read -P 110 0xb8000 0x8000
|
||||
|
||||
echo read -P 12 0xc0000 0x4000
|
||||
echo read -P 120 0xc4000 0x18000
|
||||
echo read -P 121 0xdc000 0x2000
|
||||
echo read -P 13 0xde000 0x2000
|
||||
|
||||
echo read -P 14 0xe0000 0x4000
|
||||
echo read -P 140 0xe4000 0x14000
|
||||
echo read -P 15 0xf8000 0x4000
|
||||
echo read -P 141 0xfc000 0x2000
|
||||
echo read -P 15 0xfe000 0x2000
|
||||
|
||||
echo read -P 16 0x100000 0x4000
|
||||
echo read -P 160 0x104000 0x8000
|
||||
# Undefined content for 0x10c000 0x8000
|
||||
echo read -P 160 0x114000 0x8000
|
||||
echo read -P 17 0x11c000 0x4000
|
||||
}
|
||||
|
||||
verify_io | $QEMU_IO $TEST_IMG | _filter_qemu_io
|
||||
|
@ -34,6 +34,38 @@ qemu-io> wrote 65536/65536 bytes at offset 917504
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 983040
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1048576
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1114112
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1179648
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1245184
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1310720
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1376256
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1441792
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1507328
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1572864
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1638400
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1703936
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1769472
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1835008
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1900544
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 1966080
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 65536/65536 bytes at offset 2031616
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=6442450944 backing_file='TEST_DIR/t.IMGFMT.base'
|
||||
|
||||
== Some concurrent requests touching the same cluster ==
|
||||
@ -89,6 +121,24 @@ qemu-io> wrote 8192/8192 bytes at offset XXX
|
||||
8 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
wrote 57344/57344 bytes at offset XXX
|
||||
56 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> qemu-io> blkdebug: Suspended request 'A'
|
||||
qemu-io> qemu-io> qemu-io> blkdebug: Resuming request 'A'
|
||||
qemu-io> wrote 8192/8192 bytes at offset XXX
|
||||
8 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
wrote 98304/98304 bytes at offset XXX
|
||||
96 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> qemu-io> blkdebug: Suspended request 'A'
|
||||
qemu-io> qemu-io> qemu-io> blkdebug: Resuming request 'A'
|
||||
qemu-io> wrote 8192/8192 bytes at offset XXX
|
||||
8 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
wrote 81920/81920 bytes at offset XXX
|
||||
80 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> qemu-io> blkdebug: Suspended request 'A'
|
||||
qemu-io> qemu-io> qemu-io> blkdebug: Resuming request 'A'
|
||||
qemu-io> wrote 32768/32768 bytes at offset XXX
|
||||
32 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
wrote 98304/98304 bytes at offset XXX
|
||||
96 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io>
|
||||
== Verify image content ==
|
||||
qemu-io> read 65536/65536 bytes at offset 0
|
||||
@ -159,5 +209,31 @@ qemu-io> read 57344/57344 bytes at offset 696320
|
||||
56 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 32768/32768 bytes at offset 753664
|
||||
32 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 16384/16384 bytes at offset 786432
|
||||
16 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 98304/98304 bytes at offset 802816
|
||||
96 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 8192/8192 bytes at offset 901120
|
||||
8 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 8192/8192 bytes at offset 909312
|
||||
8 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 16384/16384 bytes at offset 917504
|
||||
16 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 81920/81920 bytes at offset 933888
|
||||
80 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 16384/16384 bytes at offset 1015808
|
||||
16 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 8192/8192 bytes at offset 1032192
|
||||
8 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 8192/8192 bytes at offset 1040384
|
||||
8 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 16384/16384 bytes at offset 1048576
|
||||
16 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 32768/32768 bytes at offset 1064960
|
||||
32 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 32768/32768 bytes at offset 1130496
|
||||
32 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 16384/16384 bytes at offset 1163264
|
||||
16 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> No errors were found on the image.
|
||||
*** done
|
||||
|
Loading…
Reference in New Issue
Block a user