Ping! Is there something to be fixed in the series?
Thanks,
Denis
On 02.04.2020 09:36, Denis Plotnikov wrote:
> v18:
> * 04: add quotes to all file name variables [Vladimir]
> * 04: add Vladimir's comment according to "qemu-io write -s"
> option issue.
>
> v17:
> * 03: remove incorrect comment in zstd decompress [Vladimir]
> * 03: remove "paraniod" and rewrite the comment on decompress [Vladimir]
> * 03: fix dead assignment [Vladimir]
> * 04: add and remove quotes [Vladimir]
> * 04: replace long offset form with the short one [Vladimir]
>
> v16:
> * 03: ssize_t for ret, size_t for zstd_ret [Vladimir]
> * 04: small fixes according to the comments [Vladimir]
>
> v15:
> * 01: aiming qemu 5.1 [Eric]
> * 03: change zstd_res definition place [Vladimir]
> * 04: add two new test cases [Eric]
> 1. test adjacent cluster compression with zstd
> 2. test incompressible cluster processing
> * 03, 04: many rewording and gramma fixing [Eric]
>
> v14:
> * fix bug on compression - looping until compress == 0 [Me]
> * apply reworked Vladimir's suggestions:
> 1. not mixing ssize_t with size_t
> 2. safe check for ENOMEM in compression part - avoid overflow
> 3. tolerate sanity check allow zstd to make progress only
> on one of the buffers
> v13:
> * 03: add progress sanity check to decompression loop [Vladimir]
> 03: add successful decompression check [Me]
>
> v12:
> * 03: again, rework compression and decompression loops
> to make them more correct [Vladimir]
> 03: move assert in compression to more appropriate place
> [Vladimir]
> v11:
> * 03: the loops don't need "do{}while" form anymore and
> the they were buggy (missed "do" in the beginning)
> replace them with usual "while(){}" loops [Vladimir]
> v10:
> * 03: fix zstd (de)compressed loops for multi-frame
> cases [Vladimir]
> v9:
> * 01: fix error checking and reporting in qcow2_amend compression type part [Vladimir]
> * 03: replace asserts with -EIO in qcow2_zstd_decompression [Vladimir, Alberto]
> * 03: reword/amend/add comments, fix typos [Vladimir]
>
> v8:
> * 03: switch zstd API from simple to stream [Eric]
> No need to state a special cluster layout for zstd
> compressed clusters.
> v7:
> * use qapi_enum_parse instead of the open-coding [Eric]
> * fix wording, typos and spelling [Eric]
>
> v6:
> * "block/qcow2-threads: fix qcow2_decompress" is removed from the series
> since it has been accepted by Max already
> * add compile time checking for Qcow2Header to be a multiple of 8 [Max, Alberto]
> * report error on qcow2 amending when the compression type is actually chnged [Max]
> * remove the extra space and the extra new line [Max]
> * re-arrange acks and signed-off-s [Vladimir]
>
> v5:
> * replace -ENOTSUP with abort in qcow2_co_decompress [Vladimir]
> * set cluster size for all test cases in the beginning of the 287 test
>
> v4:
> * the series is rebased on top of 01 "block/qcow2-threads: fix qcow2_decompress"
> * 01 is just a no-change resend to avoid extra dependencies. Still, it may be merged in separate
>
> v3:
> * remove redundant max compression type value check [Vladimir, Eric]
> (the switch below checks everything)
> * prevent compression type changing on "qemu-img amend" [Vladimir]
> * remove zstd config setting, since it has been added already by
> "migration" patches [Vladimir]
> * change the compression type error message [Vladimir]
> * fix alignment and 80-chars exceeding [Vladimir]
>
> v2:
> * rework compression type setting [Vladimir]
> * squash iotest changes to the compression type introduction patch [Vladimir, Eric]
> * fix zstd availability checking in zstd iotest [Vladimir]
> * remove unnecessry casting [Eric]
> * remove rudundant checks [Eric]
> * fix compressed cluster layout in qcow2 spec [Vladimir]
> * fix wording [Eric, Vladimir]
> * fix compression type filtering in iotests [Eric]
>
> v1:
> the initial series
>
>
>
> Denis Plotnikov (4):
> qcow2: introduce compression type feature
> qcow2: rework the cluster compression routine
> qcow2: add zstd cluster compression
> iotests: 287: add qcow2 compression type test
>
> docs/interop/qcow2.txt | 1 +
> configure | 2 +-
> qapi/block-core.json | 23 +++-
> block/qcow2.h | 20 ++-
> include/block/block_int.h | 1 +
> block/qcow2-threads.c | 228 +++++++++++++++++++++++++++++--
> block/qcow2.c | 120 ++++++++++++++++
> 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/287 | 167 ++++++++++++++++++++++
> tests/qemu-iotests/287.out | 70 ++++++++++
> tests/qemu-iotests/common.filter | 3 +-
> tests/qemu-iotests/group | 1 +
> 22 files changed, 732 insertions(+), 108 deletions(-)
> create mode 100755 tests/qemu-iotests/287
> create mode 100644 tests/qemu-iotests/287.out
>