qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: John Snow <jsnow@redhat.com>
To: qemu-devel@nongnu.org
Cc: kwolf@redhat.com, Fam Zheng <famz@redhat.com>,
	John Snow <jsnow@redhat.com>,
	armbru@redhat.com, mreitz@redhat.com, vsementsov@parallels.com,
	stefanha@redhat.com, pbonzini@redhat.com
Subject: [Qemu-devel] [PATCH v9 03/10] block: Introduce bdrv_dirty_bitmap_granularity()
Date: Mon,  1 Dec 2014 15:30:09 -0500	[thread overview]
Message-ID: <1417465816-19345-4-git-send-email-jsnow@redhat.com> (raw)
In-Reply-To: <1417465816-19345-1-git-send-email-jsnow@redhat.com>

From: Fam Zheng <famz@redhat.com>

This returns the granularity (in bytes) of dirty bitmap,
which matches the QMP interface and the existing query
interface.

Signed-off-by: Fam Zheng <famz@redhat.com>
Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
---
 block.c               | 9 +++++++--
 include/block/block.h | 2 ++
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/block.c b/block.c
index 3f27519..a0d1150 100644
--- a/block.c
+++ b/block.c
@@ -5399,8 +5399,7 @@ BlockDirtyInfoList *bdrv_query_dirty_bitmaps(BlockDriverState *bs)
         BlockDirtyInfo *info = g_new0(BlockDirtyInfo, 1);
         BlockDirtyInfoList *entry = g_new0(BlockDirtyInfoList, 1);
         info->count = bdrv_get_dirty_count(bs, bm);
-        info->granularity =
-            ((int64_t) BDRV_SECTOR_SIZE << hbitmap_granularity(bm->bitmap));
+        info->granularity = bdrv_dirty_bitmap_granularity(bs, bm);
         info->has_name = !!bm->name;
         info->name = g_strdup(bm->name);
         entry->value = info;
@@ -5439,6 +5438,12 @@ uint64_t bdrv_dbm_calc_def_granularity(BlockDriverState *bs)
     return granularity;
 }
 
+int64_t bdrv_dirty_bitmap_granularity(BlockDriverState *bs,
+                                  BdrvDirtyBitmap *bitmap)
+{
+    return BDRV_SECTOR_SIZE << hbitmap_granularity(bitmap->bitmap);
+}
+
 void bdrv_dirty_iter_init(BlockDriverState *bs,
                           BdrvDirtyBitmap *bitmap, HBitmapIter *hbi)
 {
diff --git a/include/block/block.h b/include/block/block.h
index 066ded6..f180f93 100644
--- a/include/block/block.h
+++ b/include/block/block.h
@@ -440,6 +440,8 @@ void bdrv_dirty_bitmap_make_anon(BlockDriverState *bs, BdrvDirtyBitmap *bitmap);
 void bdrv_release_dirty_bitmap(BlockDriverState *bs, BdrvDirtyBitmap *bitmap);
 BlockDirtyInfoList *bdrv_query_dirty_bitmaps(BlockDriverState *bs);
 uint64_t bdrv_dbm_calc_def_granularity(BlockDriverState *bs);
+int64_t bdrv_dirty_bitmap_granularity(BlockDriverState *bs,
+                                      BdrvDirtyBitmap *bitmap);
 int bdrv_get_dirty(BlockDriverState *bs, BdrvDirtyBitmap *bitmap, int64_t sector);
 void bdrv_set_dirty(BlockDriverState *bs, int64_t cur_sector, int nr_sectors);
 void bdrv_reset_dirty(BlockDriverState *bs, int64_t cur_sector, int nr_sectors);
-- 
1.9.3

  parent reply	other threads:[~2014-12-01 20:31 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-01 20:30 [Qemu-devel] [PATCH v9 00/10] block: Incremental backup series John Snow
2014-12-01 20:30 ` [Qemu-devel] [PATCH v9 01/10] qapi: Add optional field "name" to block dirty bitmap John Snow
2014-12-01 20:38   ` Eric Blake
2014-12-01 20:30 ` [Qemu-devel] [PATCH v9 02/10] qmp: Add block-dirty-bitmap-add and block-dirty-bitmap-remove John Snow
2014-12-01 21:42   ` Eric Blake
2014-12-09 16:00   ` Stefan Hajnoczi
2014-12-10 12:43     ` Markus Armbruster
2014-12-12 10:53       ` Stefan Hajnoczi
2014-12-15  8:50         ` Markus Armbruster
2014-12-17 12:07           ` John Snow
2014-12-17 16:12             ` Markus Armbruster
2014-12-01 20:30 ` John Snow [this message]
2014-12-09 16:10   ` [Qemu-devel] [PATCH v9 03/10] block: Introduce bdrv_dirty_bitmap_granularity() Stefan Hajnoczi
2014-12-01 20:30 ` [Qemu-devel] [PATCH v9 04/10] hbitmap: Add hbitmap_copy John Snow
2014-12-09 17:19   ` Stefan Hajnoczi
2014-12-01 20:30 ` [Qemu-devel] [PATCH v9 05/10] block: Add bdrv_copy_dirty_bitmap and bdrv_reset_dirty_bitmap John Snow
2014-12-10  8:11   ` Vladimir Sementsov-Ogievskiy
2014-12-01 20:30 ` [Qemu-devel] [PATCH v9 06/10] qmp: Add block-dirty-bitmap-enable and block-dirty-bitmap-disable John Snow
2014-12-09 17:28   ` Stefan Hajnoczi
2014-12-01 20:30 ` [Qemu-devel] [PATCH v9 07/10] qmp: Add support of "dirty-bitmap" sync mode for drive-backup John Snow
2014-12-09 17:44   ` Stefan Hajnoczi
2014-12-10  1:34     ` Fam Zheng
2014-12-12 10:58       ` Stefan Hajnoczi
2014-12-01 20:30 ` [Qemu-devel] [PATCH v9 08/10] qapi: Add transaction support to block-dirty-bitmap-{add, enable, disable} John Snow
2014-12-09 17:45   ` Stefan Hajnoczi
2014-12-01 20:30 ` [Qemu-devel] [PATCH v9 09/10] qmp: Add dirty bitmap 'enabled' field in query-block John Snow
2014-12-01 20:30 ` [Qemu-devel] [PATCH v9 10/10] qemu-iotests: Add tests for drive-backup sync=dirty-bitmap John Snow

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1417465816-19345-4-git-send-email-jsnow@redhat.com \
    --to=jsnow@redhat.com \
    --cc=armbru@redhat.com \
    --cc=famz@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=mreitz@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=vsementsov@parallels.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).