mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-05 08:43:55 -06:00
qemu-iotests: Use zero-based offsets for IO patterns
The io_pattern style functions have the following loop: for i in `seq 1 $count`; do echo ... $(( start + i * step )) ... done Offsets are 1-based so start=1024, step=512, count=4 yields: 1536, 2048, 2560, 3072 Normally we expect: 1024, 1536, 2048, 2560 Most tests ignore this detail, which means that they perform I/O to a slightly different range than expected by the test author. Later on things got less innocent and tests started trying to compensate for the 1-based indexing. This included negative start values in test 024 and my own attempt with count-1 in test 028! The end result is that tests that use io_pattern are hard to reason about and don't work the way you'd expect. It's time to clean this mess up. This patch switches io_pattern to 0-based offsets. This requires adjusting the golden outputs since I/O ranges are now shifted and output differs. Verifying these output diffs is easy, however. Each diff hunk moves one I/O from beyond the end of the pattern range to the beginning. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
parent
9cdfa1b34e
commit
dd0c35d69b
12 changed files with 1879 additions and 1869 deletions
|
@ -3,6 +3,8 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=6442450944
|
|||
Filling base image
|
||||
|
||||
=== IO: pattern 0
|
||||
qemu-io> wrote 512/512 bytes at offset 0
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 1024
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 2048
|
||||
|
@ -129,12 +131,12 @@ qemu-io> wrote 512/512 bytes at offset 63488
|
|||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 64512
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 65536
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 128
|
||||
qemu-io> wrote 65536/65536 bytes at offset 131072
|
||||
qemu-io> wrote 65536/65536 bytes at offset 65536
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 0
|
||||
qemu-io> wrote 512/512 bytes at offset 4294967296
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 4294968320
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 4294969344
|
||||
|
@ -261,10 +263,8 @@ qemu-io> wrote 512/512 bytes at offset 4295030784
|
|||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 4295031808
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 4295032832
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 128
|
||||
qemu-io> wrote 65536/65536 bytes at offset 4295098368
|
||||
qemu-io> wrote 65536/65536 bytes at offset 4295032832
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> No errors were found on the image.
|
||||
Creating test image with backing file
|
||||
|
@ -273,6 +273,8 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=6442450944 backing_file='TEST_DI
|
|||
Filling test image
|
||||
|
||||
=== IO: pattern 1
|
||||
qemu-io> wrote 512/512 bytes at offset 512
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 1536
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 2560
|
||||
|
@ -399,12 +401,12 @@ qemu-io> wrote 512/512 bytes at offset 64000
|
|||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 65024
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 66048
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 0
|
||||
qemu-io> wrote 65536/65536 bytes at offset 196608
|
||||
qemu-io> wrote 65536/65536 bytes at offset 131072
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 1
|
||||
qemu-io> wrote 512/512 bytes at offset 4294967808
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 4294968832
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 4294969856
|
||||
|
@ -531,15 +533,15 @@ qemu-io> wrote 512/512 bytes at offset 4295031296
|
|||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 4295032320
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> wrote 512/512 bytes at offset 4295033344
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 0
|
||||
qemu-io> wrote 65536/65536 bytes at offset 4295163904
|
||||
qemu-io> wrote 65536/65536 bytes at offset 4295098368
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> No errors were found on the image.
|
||||
Reading
|
||||
|
||||
=== IO: pattern 0
|
||||
qemu-io> read 512/512 bytes at offset 0
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 1024
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 2048
|
||||
|
@ -666,9 +668,9 @@ qemu-io> read 512/512 bytes at offset 63488
|
|||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 64512
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 65536
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 1
|
||||
qemu-io> read 512/512 bytes at offset 512
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 1536
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 2560
|
||||
|
@ -795,18 +797,18 @@ qemu-io> read 512/512 bytes at offset 64000
|
|||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 65024
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 66048
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 128
|
||||
qemu-io> read 65536/65536 bytes at offset 65536
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 0
|
||||
qemu-io> read 65536/65536 bytes at offset 131072
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 0
|
||||
qemu-io> read 65536/65536 bytes at offset 196608
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 0
|
||||
qemu-io> read 65536/65536 bytes at offset 393216
|
||||
qemu-io> read 65536/65536 bytes at offset 327680
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 0
|
||||
qemu-io> read 512/512 bytes at offset 4294967296
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 4294968320
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 4294969344
|
||||
|
@ -933,9 +935,9 @@ qemu-io> read 512/512 bytes at offset 4295030784
|
|||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 4295031808
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 4295032832
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 1
|
||||
qemu-io> read 512/512 bytes at offset 4294967808
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 4294968832
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 4294969856
|
||||
|
@ -1062,16 +1064,14 @@ qemu-io> read 512/512 bytes at offset 4295031296
|
|||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 4295032320
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> read 512/512 bytes at offset 4295033344
|
||||
512.000000 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 128
|
||||
qemu-io> read 65536/65536 bytes at offset 4295032832
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 0
|
||||
qemu-io> read 65536/65536 bytes at offset 4295098368
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 0
|
||||
qemu-io> read 65536/65536 bytes at offset 4295163904
|
||||
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
||||
qemu-io> === IO: pattern 0
|
||||
qemu-io> read 65536/65536 bytes at offset 4295360512
|
||||
qemu-io> read 65536/65536 bytes at offset 4295294976
|
||||
64 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…
Add table
Add a link
Reference in a new issue