v2: Rebase and address comments from John, Eric and Vladimir:
[02/15] block: Include hbitmap.h in block.h
Split from the next patch. [Eric]
[04/15] block: Move block dirty bitmap code to separate files
Fix long line to keep checkpatch.pl happy. [Vladimir]
Fix comment (HBitmapIter -> BdrvDirtyBitmapIter). [Vladimir]
[06/15] block: Hide HBitmap in block dirty bitmap interface
Add John's rev-by.
[09/15] block: Support meta dirty bitmap
granularity -> chunk_size
[10/15] block: Add two dirty bitmap getters
Add "const" qualifier in function parameters. [Vladimir]
[11/15] block: Assert that bdrv_release_dirty_bitmap succeeded
Rebase and reword commit message.
[12/15] hbitmap: serialization
Fix typos and add comment. [John]
[13/15] block: BdrvDirtyBitmap serialization interface
Add John's rev-by.
[14/15] tests: Add test code for hbitmap serialization
Add John's ack-by.
Two major features are added to block dirty bitmap (and underlying HBitmap) in
this series: meta bitmap and serialization, together with all other supportive
patches.
Both operations are common in dirty bitmap migration and persistence: they need
to find whether and which part of the dirty bitmap in question has changed with
meta dirty bitmap, and they need to write it to the target with serialization.
Fam Zheng (13):
backup: Use Bitmap to replace "s->bitmap"
block: Include hbitmap.h in block.h
typedefs: Add BdrvDirtyBitmap
block: Move block dirty bitmap code to separate files
block: Remove unused typedef of BlockDriverDirtyHandler
block: Hide HBitmap in block dirty bitmap interface
HBitmap: Introduce "meta" bitmap to track bit changes
tests: Add test code for meta bitmap
block: Support meta dirty bitmap
block: Add two dirty bitmap getters
block: Assert that bdrv_release_dirty_bitmap succeeded
tests: Add test code for hbitmap serialization
block: More operations for meta dirty bitmap
Vladimir Sementsov-Ogievskiy (2):
hbitmap: serialization
block: BdrvDirtyBitmap serialization interface
block.c | 360 -----------------------------
block/Makefile.objs | 2 +-
block/backup.c | 25 +-
block/dirty-bitmap.c | 534 +++++++++++++++++++++++++++++++++++++++++++
block/mirror.c | 14 +-
include/block/block.h | 40 +---
include/block/dirty-bitmap.h | 76 ++++++
include/qemu/hbitmap.h | 96 ++++++++
include/qemu/typedefs.h | 2 +
tests/test-hbitmap.c | 255 +++++++++++++++++++++
util/hbitmap.c | 203 ++++++++++++++--
11 files changed, 1176 insertions(+), 431 deletions(-)
create mode 100644 block/dirty-bitmap.c
create mode 100644 include/block/dirty-bitmap.h
--
2.4.3