The compression filter driver is introduced as suggested by Max. A sample usage of the filter can be found in the test #214. Now, multiple clusters can be written compressed. It is useful for the backup job.
v9: The filter functions unrelated to the 'file' child were removed. The check for compression support in bs->file is checked in the compress_open(). Discussed in the email thread with the message ID <1574056144-625164-1-git-send-email-andrey.shinkev...@virtuozzo.com> Andrey Shinkevich (3): block: introduce compress filter driver qcow2: Allow writing compressed data of multiple clusters tests/qemu-iotests: add case to write compressed data of multiple clusters block/Makefile.objs | 1 + block/filter-compress.c | 190 +++++++++++++++++++++++++++++++++++++++++++++ block/qcow2.c | 102 +++++++++++++++++------- qapi/block-core.json | 10 ++- tests/qemu-iotests/214 | 43 ++++++++++ tests/qemu-iotests/214.out | 14 ++++ 6 files changed, 329 insertions(+), 31 deletions(-) create mode 100644 block/filter-compress.c -- 1.8.3.1