[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v20 1/4] qcow2: introduce compression type feature
From: |
Max Reitz |
Subject: |
Re: [PATCH v20 1/4] qcow2: introduce compression type feature |
Date: |
Mon, 27 Apr 2020 14:35:47 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 |
On 21.04.20 10:11, Denis Plotnikov wrote:
> The patch adds some preparation parts for incompatible compression type
> feature to qcow2 allowing the use different compression methods for
> image clusters (de)compressing.
>
> It is implied that the compression type is set on the image creation and
> can be changed only later by image conversion, thus compression type
> defines the only compression algorithm used for the image, and thus,
> for all image clusters.
>
> The goal of the feature is to add support of other compression methods
> to qcow2. For example, ZSTD which is more effective on compression than ZLIB.
>
> The default compression is ZLIB. Images created with ZLIB compression type
> are backward compatible with older qemu versions.
>
> Adding of the compression type breaks a number of tests because now the
> compression type is reported on image creation and there are some changes
> in the qcow2 header in size and offsets.
>
> The tests are fixed in the following ways:
> * filter out compression_type for many tests
> * fix header size, feature table size and backing file offset
> affected tests: 031, 036, 061, 080
> header_size +=8: 1 byte compression type
> 7 bytes padding
> feature_table += 48: incompatible feature compression type
> backing_file_offset += 56 (8 + 48 -> header_change +
> feature_table_change)
> * add "compression type" for test output matching when it isn't filtered
> affected tests: 049, 060, 061, 065, 144, 182, 242, 255
>
> Signed-off-by: Denis Plotnikov <address@hidden>
> Reviewed-by: Vladimir Sementsov-Ogievskiy <address@hidden>
> Reviewed-by: Eric Blake <address@hidden>
> QAPI part:
> Acked-by: Markus Armbruster <address@hidden>
> ---
> qapi/block-core.json | 22 +++++-
> block/qcow2.h | 20 +++++-
> include/block/block_int.h | 1 +
> block/qcow2.c | 113 +++++++++++++++++++++++++++++++
> tests/qemu-iotests/031.out | 14 ++--
> tests/qemu-iotests/036.out | 4 +-
> tests/qemu-iotests/049.out | 102 ++++++++++++++--------------
> tests/qemu-iotests/060.out | 1 +
> tests/qemu-iotests/061.out | 34 ++++++----
> tests/qemu-iotests/065 | 28 +++++---
> tests/qemu-iotests/080 | 2 +-
> tests/qemu-iotests/144.out | 4 +-
> tests/qemu-iotests/182.out | 2 +-
> tests/qemu-iotests/242.out | 5 ++
> tests/qemu-iotests/255.out | 8 +--
> tests/qemu-iotests/common.filter | 3 +-
> 16 files changed, 267 insertions(+), 96 deletions(-)
Reviewed-by: Max Reitz <address@hidden>
signature.asc
Description: OpenPGP digital signature
- [PATCH v20 2/4] qcow2: rework the cluster compression routine, (continued)
[PATCH v20 1/4] qcow2: introduce compression type feature, Denis Plotnikov, 2020/04/21
[PATCH v20 4/4] iotests: 287: add qcow2 compression type test, Denis Plotnikov, 2020/04/21