[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH 0/5] block dirty bitmaps: support libvirt API
From: |
John Snow |
Subject: |
[Qemu-block] [PATCH 0/5] block dirty bitmaps: support libvirt API |
Date: |
Tue, 5 Jun 2018 14:59:00 -0400 |
This is largely the same series that Vladimir sent in January, but at
the time I was unsure of if we'd want these commands or not in QEMU.
After discussing with Virtuozzo their plans for a checkpoint-like API
implemented primarily in libvirt, I agree that these commands are at
least tentatively useful.
Eric Blake is currently writing a counter-proposal and demo API to show
to Virtuozzo on libvirt's development list. Check in these QMP commands
with the experimental prefix 'x-' for now so that it can be used for
prototyping.
Once the design for the libvirt API looks reasonably final I will
remove the 'x-' prefixes, or, if we wind up not using these particular
commands I will delete them entirely.
v3:
- Drop patch one (already merged)
- Minor phrasing adjustments to documentation
- Removed &state->bs argument to bitmap lookup for enable/disable
- Added x- prefix to all three commands and to add's new argument.
Vladimir's original cover letter is below:
There are three qmp commands, needed to implement external backup API.
Using these three commands, client may do all needed bitmap management by
hand:
on backup start we need to do a transaction:
{disable old bitmap, create new bitmap}
on backup success:
drop old bitmap
on backup fail:
enable old bitmap
merge new bitmap to old bitmap
drop new bitmap
John Snow (1):
qapi: add x-block-dirty-bitmap-enable/disable
Vladimir Sementsov-Ogievskiy (4):
block/dirty-bitmap: add lock to bdrv_enable/disable_dirty_bitmap
qmp: transaction support for x-block-dirty-bitmap-enable/disable
qapi: add x-block-dirty-bitmap-merge
qapi: add disabled parameter to block-dirty-bitmap-add
block/dirty-bitmap.c | 24 ++++++-
blockdev.c | 163 ++++++++++++++++++++++++++++++++++++++++++-
include/block/dirty-bitmap.h | 3 +-
qapi/block-core.json | 86 ++++++++++++++++++++++-
qapi/transaction.json | 4 ++
5 files changed, 275 insertions(+), 5 deletions(-)
--
2.14.3
- [Qemu-block] [PATCH 0/5] block dirty bitmaps: support libvirt API,
John Snow <=
- [Qemu-block] [PATCH 3/5] qmp: transaction support for x-block-dirty-bitmap-enable/disable, John Snow, 2018/06/05
- [Qemu-block] [PATCH 1/5] block/dirty-bitmap: add lock to bdrv_enable/disable_dirty_bitmap, John Snow, 2018/06/05
- [Qemu-block] [PATCH 2/5] qapi: add x-block-dirty-bitmap-enable/disable, John Snow, 2018/06/05
- [Qemu-block] [PATCH 4/5] qapi: add x-block-dirty-bitmap-merge, John Snow, 2018/06/05
- [Qemu-block] [PATCH 5/5] qapi: add disabled parameter to block-dirty-bitmap-add, John Snow, 2018/06/05