This makes a cleaner base for more dirty bitmap work. "granularity" appearing with different representations have always been mind twisting, remove it from HBitmap to make the interface and implementation simpler. Upon this, it is a bit easier to add persistent dirty bitmap functionalities.
Block dirty bitmap is not unit-tested, so the removal of HBitmap test code looks like a loss, but the overall test coverage is barely affected as we also have various mirror, commit and backup iotest cases, and they do catch various bugs when I wrote the patches. Please review! Fam Fam Zheng (3): backup: Use Bitmap to replace "s->bitmap" block: Hide HBitmap in block dirty bitmap interface hbitmap: Drop "granularity" block.c | 79 ++++++++++++++----- block/backup.c | 25 +++--- block/mirror.c | 14 ++-- include/block/block.h | 9 ++- include/qemu/hbitmap.h | 20 +---- tests/test-hbitmap.c | 206 ++++++++----------------------------------------- util/hbitmap.c | 64 +++------------ 7 files changed, 135 insertions(+), 282 deletions(-) -- 2.4.3