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.
v12: 01: Missed to change the driver interface .bdrv_co_block_status from _status_from_backing to _status_from_file (noticed by Vladimir). 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 | 168 +++++++++++++++++++++++++++++++++++++++++++++ block/qcow2.c | 102 +++++++++++++++++++-------- qapi/block-core.json | 10 +-- tests/qemu-iotests/214 | 43 ++++++++++++ tests/qemu-iotests/214.out | 14 ++++ 6 files changed, 307 insertions(+), 31 deletions(-) create mode 100644 block/filter-compress.c -- 1.8.3.1