1QA output created by 223 2 3=== Create partially sparse image, then add dirty bitmap === 4 5Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=4194304 6wrote 2097152/2097152 bytes at offset 1048576 72 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 8Testing: 9QMP_VERSION 10{"return": {}} 11{"return": {}} 12{"return": {}} 13{"return": {}} 14{"timestamp": {"seconds": TIMESTAMP, "microseconds": TIMESTAMP}, "event": "SHUTDOWN", "data": {"guest": false}} 15 16 17=== Write part of the file under active bitmap === 18 19wrote 2097152/2097152 bytes at offset 2097152 202 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 21 22=== End dirty bitmap, and start serving image over NBD === 23 24{"return": {}} 25{"return": {}} 26{"return": {}} 27{"return": {}} 28{"return": {}} 29{"return": {}} 30 31=== Contrast normal status with dirty-bitmap status === 32 33read 1048576/1048576 bytes at offset 0 341 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 35read 1048576/1048576 bytes at offset 1048576 361 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 37read 2097152/2097152 bytes at offset 2097152 382 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 39[{ "start": 0, "length": 1048576, "depth": 0, "zero": true, "data": false}, 40{ "start": 1048576, "length": 3145728, "depth": 0, "zero": false, "data": true}] 41[{ "start": 0, "length": 2097152, "depth": 0, "zero": false, "data": true}, 42{ "start": 2097152, "length": 2097152, "depth": 0, "zero": false, "data": false}] 43 44=== End NBD server === 45 46{"return": {}} 47{"return": {}} 48{"return": {}} 49*** done 50