|
From: | Vladimir Sementsov-Ogievskiy |
Subject: | Re: [Qemu-block] [Qemu-devel] [PATCH v2 5/6] qapi: add block-dirty-bitmap-merge |
Date: | Mon, 5 Feb 2018 15:00:46 +0300 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 |
03.02.2018 19:06, Markus Armbruster wrote:
Vladimir Sementsov-Ogievskiy <address@hidden> writes:Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden> --- qapi/block-core.json | 38 ++++++++++++++++++++++++++++++++++++++ include/block/dirty-bitmap.h | 2 ++ block/dirty-bitmap.c | 18 ++++++++++++++++++ blockdev.c | 30 ++++++++++++++++++++++++++++++ 4 files changed, 88 insertions(+) diff --git a/qapi/block-core.json b/qapi/block-core.json index b3851ee760..9f9cfa0a44 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -1604,6 +1604,20 @@ '*persistent': 'bool', '*autoload': 'bool' } }##+# @BlockDirtyBitmapMerge: +# +# @node: name of device/node which the bitmap is tracking +# +# @dst_name: name of the destination dirty bitmap +# +# @src_name: name of the source dirty bitmap +# +# Since: 2.12 +## +{ 'struct': 'BlockDirtyBitmapMerge', + 'data': { 'node': 'str', 'dst_name': 'str', 'src_name': 'str' } }Please use '-' instead of '_' in QAPI. Exceptions are possible for consistency with existing (mal-)practice.
Ok.
+ +## # @block-dirty-bitmap-add: # # Create a dirty bitmap with a name on the node, and start tracking the writes. @@ -1714,6 +1728,30 @@ 'data': 'BlockDirtyBitmap' }##+# @block-dirty-bitmap-merge: +# +# Merge @src_name dirty bitmap to @dst_name dirty bitmap. @src_name dirty +# bitmap is unchanged. +# +# Returns: nothing on success +# If @node is not a valid block device, DeviceNotFound +# If @dst_name or @src_name is not found, GenericError +# If bitmaps has different sizes or granularities, GenericErrorThe less error classes other than GenericError are used, the happier I am... Do users really need to distinguish between the first error and other errors?
this semantic is already used for other bitmap related commands..
+# +# Since: 2.12 +# +# Example: +# +# -> { "execute": "block-dirty-bitmap-merge", +# "arguments": { "node": "drive0", "dst_name": "bitmap0", +# "src_name": "bitmap1" } } +# <- { "return": {} } +# +## + { 'command': 'block-dirty-bitmap-merge', + 'data': 'BlockDirtyBitmapMerge' } + +## # @BlockDirtyBitmapSha256: # # SHA256 hash of dirty bitmap data[...]
-- Best regards, Vladimir
[Prev in Thread] | Current Thread | [Next in Thread] |