From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52625) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a5oqJ-0001Hs-B2 for qemu-devel@nongnu.org; Mon, 07 Dec 2015 01:00:17 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a5oqF-00066Z-9G for qemu-devel@nongnu.org; Mon, 07 Dec 2015 01:00:11 -0500 From: Fam Zheng Date: Mon, 7 Dec 2015 13:59:52 +0800 Message-Id: <1449467995-18793-1-git-send-email-famz@redhat.com> Subject: [Qemu-devel] [PATCH RFC for-2.6 0/3] block: Add meta dirty bitmap for migration/persistence List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Kevin Wolf , Vladimir Sementsov-Ogievskiy , qemu-block@nongnu.org, Stefan Hajnoczi , pbonzini@redhat.com, jsnow@redhat.com Vladimir, This is what I propose to implement meta bitmap. It's implemented in the HBitmap level to be more efficient, and the interface slightly varies too. I'd like to use these operations to make dirty bitmap persistence more efficient too: unchanged dirty bits don't need to be flushed to disk. So I'm posting this as a separate series for a common base for both sides. Posting as RFC as 2.6 dev phase is just starting, we can still tweak the interface and/or implementation to fit the need. Fam Zheng (3): HBitmap: Introduce "meta" bitmap to track bit changes tests: Add test code for meta bitmap block: Support meta dirty bitmap block.c | 46 ++++++++++++++++++++++++++++++- block/mirror.c | 3 +- blockdev.c | 3 +- include/block/block.h | 11 ++++++++ include/qemu/hbitmap.h | 7 +++++ migration/block.c | 2 +- tests/test-hbitmap.c | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++ util/hbitmap.c | 22 +++++++++++++++ 8 files changed, 164 insertions(+), 4 deletions(-) -- 2.4.3