qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 0/6] qmp dirty bitmap API
@ 2018-01-16 12:54 Vladimir Sementsov-Ogievskiy
  2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 1/6] block: maintain persistent disabled bitmaps Vladimir Sementsov-Ogievskiy
                   ` (6 more replies)
  0 siblings, 7 replies; 28+ messages in thread
From: Vladimir Sementsov-Ogievskiy @ 2018-01-16 12:54 UTC (permalink / raw)
  To: qemu-devel, qemu-block
  Cc: eblake, armbru, mreitz, kwolf, jsnow, famz, vsementsov, den,
	nshirokovskiy, mnestratov

Hi all.

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

v2: fix merge command deadlock
  add new patches: 1 and 6

Vladimir Sementsov-Ogievskiy (6):
  block: maintain persistent disabled bitmaps
  block/dirty-bitmap: add lock to bdrv_enable/disable_dirty_bitmap
  qapi: add block-dirty-bitmap-enable/disable
  qmp: transaction support for block-dirty-bitmap-enable/disable
  qapi: add block-dirty-bitmap-merge
  qapi: add disabled parameter to block-dirty-bitmap-add

 qapi/block-core.json         |  92 ++++++++++++++++++++++-
 qapi/transaction.json        |   4 +
 block/qcow2.h                |   2 +-
 include/block/dirty-bitmap.h |   3 +-
 block/dirty-bitmap.c         |  42 ++++++-----
 block/qcow2-bitmap.c         |  12 +--
 block/qcow2.c                |   2 +-
 blockdev.c                   | 169 +++++++++++++++++++++++++++++++++++++++++--
 8 files changed, 287 insertions(+), 39 deletions(-)

-- 
2.11.1

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2018-10-08 13:25 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-16 12:54 [Qemu-devel] [PATCH v2 0/6] qmp dirty bitmap API Vladimir Sementsov-Ogievskiy
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 1/6] block: maintain persistent disabled bitmaps Vladimir Sementsov-Ogievskiy
2018-01-19 23:43   ` John Snow
2018-01-22  9:08     ` Vladimir Sementsov-Ogievskiy
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 2/6] block/dirty-bitmap: add lock to bdrv_enable/disable_dirty_bitmap Vladimir Sementsov-Ogievskiy
2018-01-19 23:45   ` John Snow
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 3/6] qapi: add block-dirty-bitmap-enable/disable Vladimir Sementsov-Ogievskiy
2018-01-19 23:50   ` John Snow
2018-01-22  9:09     ` Vladimir Sementsov-Ogievskiy
2018-01-22 19:51       ` Eric Blake
2018-01-22 19:56         ` John Snow
2018-02-02 15:37           ` Vladimir Sementsov-Ogievskiy
2018-02-03 16:09   ` Markus Armbruster
2018-02-05 11:59     ` Vladimir Sementsov-Ogievskiy
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 4/6] qmp: transaction support for block-dirty-bitmap-enable/disable Vladimir Sementsov-Ogievskiy
2018-01-17 15:06   ` Vladimir Sementsov-Ogievskiy
2018-01-20  0:28     ` John Snow
2018-01-22  9:14       ` Vladimir Sementsov-Ogievskiy
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 5/6] qapi: add block-dirty-bitmap-merge Vladimir Sementsov-Ogievskiy
2018-02-03 16:06   ` Markus Armbruster
2018-02-05 12:00     ` Vladimir Sementsov-Ogievskiy
     [not found]   ` <66a8f977-9274-e77b-e795-21a50690c4eb@redhat.com>
2018-10-08 13:24     ` Vladimir Sementsov-Ogievskiy
2018-01-16 12:54 ` [Qemu-devel] [PATCH v2 6/6] qapi: add disabled parameter to block-dirty-bitmap-add Vladimir Sementsov-Ogievskiy
2018-01-19 23:30 ` [Qemu-devel] [PATCH v2 0/6] qmp dirty bitmap API John Snow
2018-01-22  9:20   ` Vladimir Sementsov-Ogievskiy
2018-01-22 12:22     ` Vladimir Sementsov-Ogievskiy
2018-01-22 17:23       ` John Snow
2018-02-02 11:56         ` Vladimir Sementsov-Ogievskiy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).