4f193168af
These cases are fixed by previous patches around block_status and is_allocated. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Alberto Garcia <berto@igalia.com> Message-id: 20200924194003.22080-6-vsementsov@virtuozzo.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
346 lines
15 KiB
Plaintext
346 lines
15 KiB
Plaintext
== Commit tests ==
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=2097152 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-mid', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=1048576 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=2097152 backing_file=TEST_DIR/PID-mid backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 2097152/2097152 bytes at offset 0
|
|
2 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
=== Check visible data ===
|
|
read 1048576/1048576 bytes at offset 0
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
read 1048576/1048576 bytes at offset 1048576
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
=== Checking allocation status ===
|
|
1048576/1048576 bytes allocated at offset 0 bytes
|
|
1048576/1048576 bytes allocated at offset 1 MiB
|
|
|
|
0/1048576 bytes allocated at offset 0 bytes
|
|
0/0 bytes allocated at offset 1 MiB
|
|
|
|
0/1048576 bytes allocated at offset 0 bytes
|
|
0/1048576 bytes allocated at offset 1 MiB
|
|
|
|
=== Checking map ===
|
|
[{ "start": 0, "length": 2097152, "depth": 0, "zero": false, "data": true, "offset": 327680}]
|
|
|
|
Offset Length Mapped to File
|
|
0 0x200000 0x50000 TEST_DIR/PID-base
|
|
|
|
[{ "start": 0, "length": 1048576, "depth": 1, "zero": false, "data": true, "offset": 327680}]
|
|
|
|
Offset Length Mapped to File
|
|
0 0x100000 0x50000 TEST_DIR/PID-base
|
|
|
|
[{ "start": 0, "length": 1048576, "depth": 2, "zero": false, "data": true, "offset": 327680},
|
|
{ "start": 1048576, "length": 1048576, "depth": 0, "zero": true, "data": false}]
|
|
|
|
Offset Length Mapped to File
|
|
0 0x100000 0x50000 TEST_DIR/PID-base
|
|
|
|
=== Testing qemu-img commit (top -> mid) ===
|
|
Image committed.
|
|
|
|
image: TEST_IMG
|
|
file format: IMGFMT
|
|
virtual size: 2 MiB (2097152 bytes)
|
|
cluster_size: 65536
|
|
backing file: TEST_DIR/PID-base
|
|
backing file format: IMGFMT
|
|
Format specific information:
|
|
compat: 1.1
|
|
compression type: zlib
|
|
lazy refcounts: false
|
|
refcount bits: 16
|
|
corrupt: false
|
|
extended l2: false
|
|
|
|
read 1048576/1048576 bytes at offset 0
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
read 1048576/1048576 bytes at offset 1048576
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
=== Testing HMP commit (top -> mid) ===
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=2097152 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-mid', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=1048576 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=2097152 backing_file=TEST_DIR/PID-mid backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 2097152/2097152 bytes at offset 0
|
|
2 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
{"execute": "human-monitor-command", "arguments": {"command-line": "commit drive0"}}
|
|
{"return": ""}
|
|
image: TEST_IMG
|
|
file format: IMGFMT
|
|
virtual size: 2 MiB (2097152 bytes)
|
|
cluster_size: 65536
|
|
backing file: TEST_DIR/PID-base
|
|
backing file format: IMGFMT
|
|
Format specific information:
|
|
compat: 1.1
|
|
compression type: zlib
|
|
lazy refcounts: false
|
|
refcount bits: 16
|
|
corrupt: false
|
|
extended l2: false
|
|
|
|
read 1048576/1048576 bytes at offset 0
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
read 1048576/1048576 bytes at offset 1048576
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
=== Testing QMP active commit (top -> mid) ===
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=2097152 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-mid', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=1048576 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=2097152 backing_file=TEST_DIR/PID-mid backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 2097152/2097152 bytes at offset 0
|
|
2 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
{"execute": "block-commit", "arguments": {"auto-dismiss": false, "base-node": "mid", "device": "top", "job-id": "job0"}}
|
|
{"return": {}}
|
|
{"execute": "job-complete", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
{"data": {"device": "job0", "len": 0, "offset": 0, "speed": 0, "type": "commit"}, "event": "BLOCK_JOB_READY", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
|
|
{"data": {"device": "job0", "len": 0, "offset": 0, "speed": 0, "type": "commit"}, "event": "BLOCK_JOB_COMPLETED", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
image: TEST_IMG
|
|
file format: IMGFMT
|
|
virtual size: 2 MiB (2097152 bytes)
|
|
cluster_size: 65536
|
|
backing file: TEST_DIR/PID-base
|
|
backing file format: IMGFMT
|
|
Format specific information:
|
|
compat: 1.1
|
|
compression type: zlib
|
|
lazy refcounts: false
|
|
refcount bits: 16
|
|
corrupt: false
|
|
extended l2: false
|
|
|
|
read 1048576/1048576 bytes at offset 0
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
read 1048576/1048576 bytes at offset 1048576
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
=== Testing qemu-img commit (top -> base) ===
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=2097152 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-mid', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=1048576 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=2097152 backing_file=TEST_DIR/PID-mid backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 2097152/2097152 bytes at offset 0
|
|
2 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
Image committed.
|
|
|
|
image: TEST_IMG
|
|
file format: IMGFMT
|
|
virtual size: 2 MiB (2097152 bytes)
|
|
cluster_size: 65536
|
|
Format specific information:
|
|
compat: 1.1
|
|
compression type: zlib
|
|
lazy refcounts: false
|
|
refcount bits: 16
|
|
corrupt: false
|
|
extended l2: false
|
|
|
|
read 1048576/1048576 bytes at offset 0
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
read 1048576/1048576 bytes at offset 1048576
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
=== Testing QMP active commit (top -> base) ===
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=2097152 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-mid', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=1048576 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=2097152 backing_file=TEST_DIR/PID-mid backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 2097152/2097152 bytes at offset 0
|
|
2 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
{"execute": "block-commit", "arguments": {"auto-dismiss": false, "base-node": "base", "device": "top", "job-id": "job0"}}
|
|
{"return": {}}
|
|
{"execute": "job-complete", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
{"data": {"device": "job0", "len": 1048576, "offset": 1048576, "speed": 0, "type": "commit"}, "event": "BLOCK_JOB_READY", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
|
|
{"data": {"device": "job0", "len": 1048576, "offset": 1048576, "speed": 0, "type": "commit"}, "event": "BLOCK_JOB_COMPLETED", "timestamp": {"microseconds": "USECS", "seconds": "SECS"}}
|
|
{"execute": "job-dismiss", "arguments": {"id": "job0"}}
|
|
{"return": {}}
|
|
image: TEST_IMG
|
|
file format: IMGFMT
|
|
virtual size: 1 MiB (1048576 bytes)
|
|
cluster_size: 65536
|
|
backing file: TEST_DIR/PID-base
|
|
backing file format: IMGFMT
|
|
Format specific information:
|
|
compat: 1.1
|
|
compression type: zlib
|
|
lazy refcounts: false
|
|
refcount bits: 16
|
|
corrupt: false
|
|
extended l2: false
|
|
|
|
read 1048576/1048576 bytes at offset 0
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
read 1048576/1048576 bytes at offset 1048576
|
|
1 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
== Resize tests ==
|
|
=== preallocation=off ===
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=6442450944 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=1073741824 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 65536/65536 bytes at offset 5368709120
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
Image resized.
|
|
|
|
read 65536/65536 bytes at offset 5368709120
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
1 GiB (0x40000000) bytes not allocated at offset 0 bytes (0x0)
|
|
7 GiB (0x1c0000000) bytes allocated at offset 1 GiB (0x40000000)
|
|
|
|
[{ "start": 0, "length": 1073741824, "depth": 1, "zero": true, "data": false},
|
|
{ "start": 1073741824, "length": 7516192768, "depth": 0, "zero": true, "data": false}]
|
|
|
|
=== preallocation=metadata ===
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=34359738368 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=32212254720 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 65536/65536 bytes at offset 33285996544
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
Image resized.
|
|
|
|
read 65536/65536 bytes at offset 33285996544
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
30 GiB (0x780000000) bytes not allocated at offset 0 bytes (0x0)
|
|
3 GiB (0xc0000000) bytes allocated at offset 30 GiB (0x780000000)
|
|
|
|
[{ "start": 0, "length": 32212254720, "depth": 1, "zero": true, "data": false},
|
|
{ "start": 32212254720, "length": 536870912, "depth": 0, "zero": true, "data": false, "offset": 327680},
|
|
{ "start": 32749125632, "length": 536870912, "depth": 0, "zero": true, "data": false, "offset": 537264128},
|
|
{ "start": 33285996544, "length": 536870912, "depth": 0, "zero": true, "data": false, "offset": 1074200576},
|
|
{ "start": 33822867456, "length": 536870912, "depth": 0, "zero": true, "data": false, "offset": 1611137024},
|
|
{ "start": 34359738368, "length": 536870912, "depth": 0, "zero": true, "data": false, "offset": 2148139008},
|
|
{ "start": 34896609280, "length": 536870912, "depth": 0, "zero": true, "data": false, "offset": 2685075456}]
|
|
|
|
=== preallocation=falloc ===
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=10485760 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=5242880 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 65536/65536 bytes at offset 9437184
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
Image resized.
|
|
|
|
read 65536/65536 bytes at offset 9437184
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
5 MiB (0x500000) bytes not allocated at offset 0 bytes (0x0)
|
|
10 MiB (0xa00000) bytes allocated at offset 5 MiB (0x500000)
|
|
|
|
[{ "start": 0, "length": 5242880, "depth": 1, "zero": true, "data": false},
|
|
{ "start": 5242880, "length": 10485760, "depth": 0, "zero": false, "data": true, "offset": 327680}]
|
|
|
|
=== preallocation=full ===
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=16777216 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=8388608 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 65536/65536 bytes at offset 11534336
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
Image resized.
|
|
|
|
read 65536/65536 bytes at offset 11534336
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
8 MiB (0x800000) bytes not allocated at offset 0 bytes (0x0)
|
|
4 MiB (0x400000) bytes allocated at offset 8 MiB (0x800000)
|
|
|
|
[{ "start": 0, "length": 8388608, "depth": 1, "zero": true, "data": false},
|
|
{ "start": 8388608, "length": 4194304, "depth": 0, "zero": false, "data": true, "offset": 327680}]
|
|
|
|
=== preallocation=off ===
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=393216 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=259072 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 65536/65536 bytes at offset 259072
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
Image resized.
|
|
|
|
read 65536/65536 bytes at offset 259072
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
192 KiB (0x30000) bytes not allocated at offset 0 bytes (0x0)
|
|
320 KiB (0x50000) bytes allocated at offset 192 KiB (0x30000)
|
|
|
|
[{ "start": 0, "length": 196608, "depth": 1, "zero": true, "data": false},
|
|
{ "start": 196608, "length": 65536, "depth": 0, "zero": false, "data": true, "offset": 327680},
|
|
{ "start": 262144, "length": 262144, "depth": 0, "zero": true, "data": false}]
|
|
|
|
=== preallocation=off ===
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=409600 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=262144 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 65536/65536 bytes at offset 344064
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
Image resized.
|
|
|
|
read 65536/65536 bytes at offset 344064
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
256 KiB (0x40000) bytes not allocated at offset 0 bytes (0x0)
|
|
256 KiB (0x40000) bytes allocated at offset 256 KiB (0x40000)
|
|
|
|
[{ "start": 0, "length": 262144, "depth": 1, "zero": true, "data": false},
|
|
{ "start": 262144, "length": 262144, "depth": 0, "zero": true, "data": false}]
|
|
|
|
=== preallocation=off ===
|
|
Formatting 'TEST_DIR/PID-base', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=524288 lazy_refcounts=off refcount_bits=16
|
|
|
|
Formatting 'TEST_DIR/PID-top', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=262144 backing_file=TEST_DIR/PID-base backing_fmt=qcow2 lazy_refcounts=off refcount_bits=16
|
|
|
|
wrote 65536/65536 bytes at offset 446464
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
Image resized.
|
|
|
|
read 65536/65536 bytes at offset 446464
|
|
64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
256 KiB (0x40000) bytes not allocated at offset 0 bytes (0x0)
|
|
244 KiB (0x3d000) bytes allocated at offset 256 KiB (0x40000)
|
|
|
|
[{ "start": 0, "length": 262144, "depth": 1, "zero": true, "data": false},
|
|
{ "start": 262144, "length": 249856, "depth": 0, "zero": true, "data": false}]
|
|
|