Requires: 1433454372-16356-1-git-send-email-js...@redhat.com [0/10] block: incremental backup transactions
It's entirely possible to use the incremental backup primitives to achieve a differential backup mechanism, but in the interest of ease of use, I am proposing the explicit addition of the mechanism because it does not particularly complicate the code, add new edge cases, or present itself as difficult to test. This series actually adds two ease of use features: (1) Add a copy primitive for bitmaps to add flexibility to the backup system in case users would like to later run multiple backup chains (weekly vs. monthly or perhaps incremental vs. differential) (2) Add a 'differential' backup mode that does what the name says on the tin. == For convenience, this branch is available at: https://github.com/jnsnow/qemu.git branch differential-backup https://github.com/jnsnow/qemu/tree/differential-backup This version is tagged differential-backup-v1: https://github.com/jnsnow/qemu/releases/tag/differential-backup-v1 == John Snow (9): qapi: Rename 'dirty-bitmap' mode to 'incremental' hbitmap: add hbitmap_copy block: add bdrv_copy_dirty_bitmap qapi: add Copy data type for bitmaps qmp: add qmp cmd block-dirty-bitmap-copy qmp: add block-dirty-bitmap-copy transaction block: add differential backup mode iotests: 124: support differential backups iotests: add differential backup test block.c | 35 +++++++++++++++++- block/backup.c | 19 ++++++---- block/mirror.c | 9 ++++- blockdev.c | 61 +++++++++++++++++++++++++++++++ docs/bitmaps.md | 8 ++-- include/block/block.h | 5 +++ include/block/block_int.h | 2 +- include/qemu/hbitmap.h | 9 +++++ qapi-schema.json | 4 +- qapi/block-core.json | 40 ++++++++++++++++++-- qmp-commands.hx | 36 ++++++++++++++++-- tests/qemu-iotests/124 | 91 +++++++++++++++++++++++++++++----------------- tests/qemu-iotests/124.out | 4 +- util/hbitmap.c | 17 +++++++++ 14 files changed, 280 insertions(+), 60 deletions(-) -- 2.1.0