diff options
author | Max Reitz <mreitz@redhat.com> | 2017-11-10 21:37:59 +0100 |
---|---|---|
committer | Max Reitz <mreitz@redhat.com> | 2018-01-23 12:34:42 +0100 |
commit | ac5b787a6ee57852021e4a5a6876759218fbbbb0 (patch) | |
tree | f807b20f911cbf545479b0d2f3b727adbe55b7ed /tests | |
parent | 7c3a3028596db5e142c6fc9644800a0ec3b073fd (diff) | |
download | qemu-ac5b787a6ee57852021e4a5a6876759218fbbbb0.zip qemu-ac5b787a6ee57852021e4a5a6876759218fbbbb0.tar.gz qemu-ac5b787a6ee57852021e4a5a6876759218fbbbb0.tar.bz2 |
qcow2: Repair unaligned preallocated zero clusters
We can easily repair unaligned preallocated zero clusters by discarding
them, so why not do it?
Signed-off-by: Max Reitz <mreitz@redhat.com>
Message-id: 20171110203759.14018-2-mreitz@redhat.com
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/qemu-iotests/060 | 3 | ||||
-rw-r--r-- | tests/qemu-iotests/060.out | 9 |
2 files changed, 11 insertions, 1 deletions
diff --git a/tests/qemu-iotests/060 b/tests/qemu-iotests/060 index 14797dd..6c7407f 100755 --- a/tests/qemu-iotests/060 +++ b/tests/qemu-iotests/060 @@ -335,7 +335,8 @@ poke_file "$TEST_IMG" "$l2_offset" "\x80\x00\x00\x00\x00\x00\x2a\x01" # Let's write to it! $QEMU_IO -c "write 0 64k" "$TEST_IMG" | _filter_qemu_io -# Can't repair this yet (TODO: We can just deallocate the cluster) +echo '--- Repairing ---' +_check_test_img -r all echo echo '=== Discarding with an unaligned refblock ===' diff --git a/tests/qemu-iotests/060.out b/tests/qemu-iotests/060.out index c4cb7c6..25d5c39 100644 --- a/tests/qemu-iotests/060.out +++ b/tests/qemu-iotests/060.out @@ -317,6 +317,15 @@ discard 65536/65536 bytes at offset 0 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) qcow2: Marking image as corrupt: Preallocated zero cluster offset 0x2a00 unaligned (guest offset: 0); further corruption events will be suppressed write failed: Input/output error +--- Repairing --- +Repairing offset=2a00: Preallocated zero cluster is not properly aligned; L2 entry corrupted. +The following inconsistencies were found and repaired: + + 0 leaked clusters + 1 corruptions + +Double checking the fixed image now... +No errors were found on the image. === Discarding with an unaligned refblock === |