[PATCH v1 5/8] iotests: fix header size, feature table size and backing file offset

Denis Plotnikov posted 8 patches 5 years, 8 months ago
Maintainers: Eric Blake <eblake@redhat.com>, Max Reitz <mreitz@redhat.com>, Kevin Wolf <kwolf@redhat.com>, Markus Armbruster <armbru@redhat.com>
There is a newer version of this series
[PATCH v1 5/8] iotests: fix header size, feature table size and backing file offset
Posted by Denis Plotnikov 5 years, 8 months ago
Affected tests: 031, 036, 061

Because of adding the compression type feature, some size values in the
qcow2 v3 header are changed:

header_size +=8: 1 byte compression type
                 7 bytes padding
feature_table += 48: incompatible feture compression type

backing_file_offset += 56 (8 + 48 -> header_change + fature_table_change)

Change the values for the test output comparison accordingly.

Signed-off-by: Denis Plotnikov <dplotnikov@virtuozzo.com>
---
 tests/qemu-iotests/031.out | 14 +++++++-------
 tests/qemu-iotests/036.out |  4 ++--
 tests/qemu-iotests/061.out | 28 ++++++++++++++--------------
 3 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/tests/qemu-iotests/031.out b/tests/qemu-iotests/031.out
index d535e407bc..ed51afe9ce 100644
--- a/tests/qemu-iotests/031.out
+++ b/tests/qemu-iotests/031.out
@@ -113,11 +113,11 @@ incompatible_features     []
 compatible_features       []
 autoclear_features        []
 refcount_order            4
-header_length             104
+header_length             112
 
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 Header extension:
@@ -146,11 +146,11 @@ incompatible_features     []
 compatible_features       []
 autoclear_features        []
 refcount_order            4
-header_length             104
+header_length             112
 
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 Header extension:
@@ -164,7 +164,7 @@ No errors were found on the image.
 
 magic                     0x514649fb
 version                   3
-backing_file_offset       0x178
+backing_file_offset       0x1b0
 backing_file_size         0x17
 cluster_bits              16
 size                      67108864
@@ -179,7 +179,7 @@ incompatible_features     []
 compatible_features       []
 autoclear_features        []
 refcount_order            4
-header_length             104
+header_length             112
 
 Header extension:
 magic                     0xe2792aca
@@ -188,7 +188,7 @@ data                      'host_device'
 
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 Header extension:
diff --git a/tests/qemu-iotests/036.out b/tests/qemu-iotests/036.out
index 0b52b934e1..fb509f6357 100644
--- a/tests/qemu-iotests/036.out
+++ b/tests/qemu-iotests/036.out
@@ -26,7 +26,7 @@ compatible_features       []
 autoclear_features        [63]
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 
@@ -38,7 +38,7 @@ compatible_features       []
 autoclear_features        []
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 *** done
diff --git a/tests/qemu-iotests/061.out b/tests/qemu-iotests/061.out
index 8b3091a412..cea7fedfdc 100644
--- a/tests/qemu-iotests/061.out
+++ b/tests/qemu-iotests/061.out
@@ -22,11 +22,11 @@ incompatible_features     []
 compatible_features       [0]
 autoclear_features        []
 refcount_order            4
-header_length             104
+header_length             112
 
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 magic                     0x514649fb
@@ -80,11 +80,11 @@ incompatible_features     []
 compatible_features       [0]
 autoclear_features        []
 refcount_order            4
-header_length             104
+header_length             112
 
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 magic                     0x514649fb
@@ -136,11 +136,11 @@ incompatible_features     [0]
 compatible_features       [0]
 autoclear_features        []
 refcount_order            4
-header_length             104
+header_length             112
 
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 ERROR cluster 5 refcount=0 reference=1
@@ -191,11 +191,11 @@ incompatible_features     []
 compatible_features       [42]
 autoclear_features        [42]
 refcount_order            4
-header_length             104
+header_length             112
 
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 magic                     0x514649fb
@@ -260,11 +260,11 @@ incompatible_features     []
 compatible_features       [0]
 autoclear_features        []
 refcount_order            4
-header_length             104
+header_length             112
 
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 read 65536/65536 bytes at offset 44040192
@@ -294,11 +294,11 @@ incompatible_features     [0]
 compatible_features       [0]
 autoclear_features        []
 refcount_order            4
-header_length             104
+header_length             112
 
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 ERROR cluster 5 refcount=0 reference=1
@@ -323,11 +323,11 @@ incompatible_features     []
 compatible_features       []
 autoclear_features        []
 refcount_order            4
-header_length             104
+header_length             112
 
 Header extension:
 magic                     0x6803f857
-length                    192
+length                    240
 data                      <binary>
 
 read 131072/131072 bytes at offset 0
-- 
2.17.0


Re: [PATCH v1 5/8] iotests: fix header size, feature table size and backing file offset
Posted by Vladimir Sementsov-Ogievskiy 5 years, 8 months ago
27.02.2020 10:29, Denis Plotnikov wrote:
> Affected tests: 031, 036, 061
> 
> Because of adding the compression type feature, some size values in the
> qcow2 v3 header are changed:
> 
> header_size +=8: 1 byte compression type
>                   7 bytes padding
> feature_table += 48: incompatible feture compression type
> 
> backing_file_offset += 56 (8 + 48 -> header_change + fature_table_change)
> 
> Change the values for the test output comparison accordingly.

Again, this should be merged to the patch, which actually break iotests.

> 
> Signed-off-by: Denis Plotnikov <dplotnikov@virtuozzo.com>
> ---
>   tests/qemu-iotests/031.out | 14 +++++++-------
>   tests/qemu-iotests/036.out |  4 ++--
>   tests/qemu-iotests/061.out | 28 ++++++++++++++--------------
>   3 files changed, 23 insertions(+), 23 deletions(-)
> 
> diff --git a/tests/qemu-iotests/031.out b/tests/qemu-iotests/031.out
> index d535e407bc..ed51afe9ce 100644
> --- a/tests/qemu-iotests/031.out
> +++ b/tests/qemu-iotests/031.out
> @@ -113,11 +113,11 @@ incompatible_features     []
>   compatible_features       []
>   autoclear_features        []
>   refcount_order            4
> -header_length             104
> +header_length             112
>   
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   Header extension:
> @@ -146,11 +146,11 @@ incompatible_features     []
>   compatible_features       []
>   autoclear_features        []
>   refcount_order            4
> -header_length             104
> +header_length             112
>   
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   Header extension:
> @@ -164,7 +164,7 @@ No errors were found on the image.
>   
>   magic                     0x514649fb
>   version                   3
> -backing_file_offset       0x178
> +backing_file_offset       0x1b0
>   backing_file_size         0x17
>   cluster_bits              16
>   size                      67108864
> @@ -179,7 +179,7 @@ incompatible_features     []
>   compatible_features       []
>   autoclear_features        []
>   refcount_order            4
> -header_length             104
> +header_length             112
>   
>   Header extension:
>   magic                     0xe2792aca
> @@ -188,7 +188,7 @@ data                      'host_device'
>   
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   Header extension:
> diff --git a/tests/qemu-iotests/036.out b/tests/qemu-iotests/036.out
> index 0b52b934e1..fb509f6357 100644
> --- a/tests/qemu-iotests/036.out
> +++ b/tests/qemu-iotests/036.out
> @@ -26,7 +26,7 @@ compatible_features       []
>   autoclear_features        [63]
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   
> @@ -38,7 +38,7 @@ compatible_features       []
>   autoclear_features        []
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   *** done
> diff --git a/tests/qemu-iotests/061.out b/tests/qemu-iotests/061.out
> index 8b3091a412..cea7fedfdc 100644
> --- a/tests/qemu-iotests/061.out
> +++ b/tests/qemu-iotests/061.out
> @@ -22,11 +22,11 @@ incompatible_features     []
>   compatible_features       [0]
>   autoclear_features        []
>   refcount_order            4
> -header_length             104
> +header_length             112
>   
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   magic                     0x514649fb
> @@ -80,11 +80,11 @@ incompatible_features     []
>   compatible_features       [0]
>   autoclear_features        []
>   refcount_order            4
> -header_length             104
> +header_length             112
>   
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   magic                     0x514649fb
> @@ -136,11 +136,11 @@ incompatible_features     [0]
>   compatible_features       [0]
>   autoclear_features        []
>   refcount_order            4
> -header_length             104
> +header_length             112
>   
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   ERROR cluster 5 refcount=0 reference=1
> @@ -191,11 +191,11 @@ incompatible_features     []
>   compatible_features       [42]
>   autoclear_features        [42]
>   refcount_order            4
> -header_length             104
> +header_length             112
>   
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   magic                     0x514649fb
> @@ -260,11 +260,11 @@ incompatible_features     []
>   compatible_features       [0]
>   autoclear_features        []
>   refcount_order            4
> -header_length             104
> +header_length             112
>   
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   read 65536/65536 bytes at offset 44040192
> @@ -294,11 +294,11 @@ incompatible_features     [0]
>   compatible_features       [0]
>   autoclear_features        []
>   refcount_order            4
> -header_length             104
> +header_length             112
>   
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   ERROR cluster 5 refcount=0 reference=1
> @@ -323,11 +323,11 @@ incompatible_features     []
>   compatible_features       []
>   autoclear_features        []
>   refcount_order            4
> -header_length             104
> +header_length             112
>   
>   Header extension:
>   magic                     0x6803f857
> -length                    192
> +length                    240
>   data                      <binary>
>   
>   read 131072/131072 bytes at offset 0
> 


-- 
Best regards,
Vladimir