[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [Qemu-devel] [PATCH v7 00/16] backup compression
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-block] [Qemu-devel] [PATCH v7 00/16] backup compression |
Date: |
Mon, 8 Aug 2016 15:16:44 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Am 08.08.2016 um 15:02 hat Stefan Hajnoczi geschrieben:
> On Fri, Jul 22, 2016 at 11:17:39AM +0300, Denis V. Lunev wrote:
> > The idea is simple - backup is "written-once" data. It is written block
> > by block and it is large enough. It would be nice to save storage
> > space and compress it.
> >
> > These patches add the ability to compress data during backup. This
> > functionality is implemented by means of adding options to the qmp/hmp
> > commands(drive-backup, blockdev-backup). The implementation is quite
> > simple, because the responsibility for data compression imposed on the
> > format driver.
> >
> > Changes from v1:
> > - added unittest for backup compression (12, 13)
> >
> > Changes from v2:
> > - implemented a new .bdrv_co_write_compressed interface to replace the
> > old .bdrv_write_compressed (2,3,4,5,6)
> >
> > Changes from v3:
> > - added the byte-based interfaces:
> > blk_pwrite_compressed()/blk_co_pwritev_compressed() (1, 7)
> > - fix drive/blockdev-backup documentation (10, 11)
> >
> > Changes from v4:
> > - added assert that offset and count are aligned (1)
> > - reuse RwCo and bdrv_co_pwritev() for write compressed (2)
> > - converted interfaces to byte-based for format drivers (2, 3, 5, 6)
> > - move an unrelated cleanup in a separate patches (4, 7)
> > - turn on dirty_bitmaps for the compressed writes (9)
> > - added simplify drive/blockdev-backup by using the boxed commands (10, 11)
> > - reworded drive/blockdev-backup documentation about compression (12, 13)
> > - fix s/bakup/backup/ (14)
> >
> > Changes from v5:
> > - rebased on master
> > - fix grammar (5, 8)
> >
> > Changes from v6:
> > - more grammar fixes (1,11)
> > - assignment cleanup as suggested by Eric in 11
> >
> > Signed-off-by: Pavel Butsykin <address@hidden>
> > Signed-off-by: Denis V. Lunev <address@hidden>
> > CC: Jeff Cody <address@hidden>
> > CC: Markus Armbruster <address@hidden>
> > CC: Eric Blake <address@hidden>
> > CC: John Snow <address@hidden>
> > CC: Stefan Hajnoczi <address@hidden>
> > CC: Kevin Wolf <address@hidden>
> >
> > Pavel Butsykin (16):
> > block: switch blk_write_compressed() to byte-based interface
> > block: Convert bdrv_pwrite_compressed() to BdrvChild
> > block/io: reuse bdrv_co_pwritev() for write compressed
> > qcow2: add qcow2_co_pwritev_compressed
> > qcow2: cleanup qcow2_co_pwritev_compressed to avoid the recursion
> > vmdk: add vmdk_co_pwritev_compressed
> > qcow: add qcow_co_pwritev_compressed
> > qcow: cleanup qcow_co_pwritev_compressed to avoid the recursion
> > block: remove BlockDriver.bdrv_write_compressed
> > block/io: turn on dirty_bitmaps for the compressed writes
> > block: simplify drive-backup
> > block: simplify blockdev-backup
> > drive-backup: added support for data compression
> > blockdev-backup: added support for data compression
> > qemu-iotests: test backup compression in 055
> > qemu-iotests: add vmdk for test backup compression in 055
> >
> > block/backup.c | 12 ++-
> > block/block-backend.c | 27 +-----
> > block/io.c | 48 ++++------
> > block/qcow.c | 113 +++++++++---------------
> > block/qcow2.c | 128 ++++++++++-----------------
> > block/vmdk.c | 55 ++----------
> > blockdev.c | 193
> > ++++++++++++++---------------------------
> > hmp-commands.hx | 8 +-
> > hmp.c | 24 ++---
> > include/block/block.h | 5 +-
> > include/block/block_int.h | 5 +-
> > include/sysemu/block-backend.h | 4 +-
> > qapi/block-core.json | 18 +++-
> > qemu-img.c | 8 +-
> > qemu-io-cmds.c | 2 +-
> > qmp-commands.hx | 9 +-
> > tests/qemu-iotests/055 | 118 +++++++++++++++++++++++++
> > tests/qemu-iotests/055.out | 4 +-
> > tests/qemu-iotests/iotests.py | 10 +--
> > 19 files changed, 366 insertions(+), 425 deletions(-)
> >
> > --
> > 2.1.4
> >
> >
>
> Since no one else has applied this...
>
> Thanks, applied to my block-next tree:
> https://github.com/stefanha/qemu/commits/block-next
Sorry, I was planning to actually give it a review (at least a quick
one) before I'd merge it. ;-)
That's the next thing I'm going to do.
Kevin
pgpHJFv7jU3Mw.pgp
Description: PGP signature