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…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Kevin Wolf
						Kevin Wolf