qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 5/6] qapi: add block-dirty-bitmap-merge


From: Markus Armbruster
Subject: Re: [Qemu-devel] [PATCH v2 5/6] qapi: add block-dirty-bitmap-merge
Date: Sat, 03 Feb 2018 17:06:31 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)

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.

> +
> +##
>  # @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, GenericError

The 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?

> +#
> +# 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
[...]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]