summaryrefslogtreecommitdiffstats
path: root/block.c
diff options
context:
space:
mode:
authorPeter Maydell2015-05-29 16:32:15 +0200
committerPeter Maydell2015-05-29 16:32:15 +0200
commit2cc3bdbe2d3908f7a813d1c2d774cc2bf07746cd (patch)
tree3b15b5565d3bad53127dbfcd5f2c34218aca6256 /block.c
parentMerge remote-tracking branch 'remotes/kraxel/tags/pull-gtk-20150529-1' into s... (diff)
parentqapi: add dirty bitmap status (diff)
downloadqemu-2cc3bdbe2d3908f7a813d1c2d774cc2bf07746cd.tar.gz
qemu-2cc3bdbe2d3908f7a813d1c2d774cc2bf07746cd.tar.xz
qemu-2cc3bdbe2d3908f7a813d1c2d774cc2bf07746cd.zip
Merge remote-tracking branch 'remotes/armbru/tags/pull-block-2015-05-29' into staging
Block QAPI, monitor, command line patches # gpg: Signature made Fri May 29 12:02:32 2015 BST using RSA key ID EB918653 # gpg: Good signature from "Markus Armbruster <armbru@redhat.com>" # gpg: aka "Markus Armbruster <armbru@pond.sub.org>" * remotes/armbru/tags/pull-block-2015-05-29: qapi: add dirty bitmap status Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'block.c')
-rw-r--r--block.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/block.c b/block.c
index f42d70e791..2b9ceae02f 100644
--- a/block.c
+++ b/block.c
@@ -3116,6 +3116,17 @@ bool bdrv_dirty_bitmap_enabled(BdrvDirtyBitmap *bitmap)
return !(bitmap->disabled || bitmap->successor);
}
+DirtyBitmapStatus bdrv_dirty_bitmap_status(BdrvDirtyBitmap *bitmap)
+{
+ if (bdrv_dirty_bitmap_frozen(bitmap)) {
+ return DIRTY_BITMAP_STATUS_FROZEN;
+ } else if (!bdrv_dirty_bitmap_enabled(bitmap)) {
+ return DIRTY_BITMAP_STATUS_DISABLED;
+ } else {
+ return DIRTY_BITMAP_STATUS_ACTIVE;
+ }
+}
+
/**
* Create a successor bitmap destined to replace this bitmap after an operation.
* Requires that the bitmap is not frozen and has no successor.
@@ -3256,7 +3267,7 @@ BlockDirtyInfoList *bdrv_query_dirty_bitmaps(BlockDriverState *bs)
info->granularity = bdrv_dirty_bitmap_granularity(bm);
info->has_name = !!bm->name;
info->name = g_strdup(bm->name);
- info->frozen = bdrv_dirty_bitmap_frozen(bm);
+ info->status = bdrv_dirty_bitmap_status(bm);
entry->value = info;
*plist = entry;
plist = &entry->next;