From: Eric Blake <eblake@redhat.com>
To: Fam Zheng <famz@redhat.com>, qemu-devel@nongnu.org
Cc: Kevin Wolf <kwolf@redhat.com>,
Paolo Bonzini <pbonzini@redhat.com>,
Benoit Canet <benoit@irqsave.net>,
Stefan Hajnoczi <stefanha@redhat.com>
Subject: Re: [Qemu-devel] [PATCH v4 2/9] qmp: Add dirty-bitmap-add and dirty-bitmap-remove
Date: Thu, 27 Mar 2014 10:41:45 -0600 [thread overview]
Message-ID: <533454C9.1000102@redhat.com> (raw)
In-Reply-To: <1395911388-31027-3-git-send-email-famz@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 1832 bytes --]
On 03/27/2014 03:09 AM, Fam Zheng wrote:
> The new command pair is added to manage user created dirty bitmap. The
> dirty bitmap's name is mandatory and must be unique for the same device,
> but different devices can have bitmaps with the same names.
>
> Signed-off-by: Fam Zheng <famz@redhat.com>
> ---
> +++ b/qapi-schema.json
> @@ -2209,6 +2209,51 @@
> '*on-target-error': 'BlockdevOnError' } }
>
> ##
> +# @DirtyBitmap
> +#
> +# @device: name of device which the bitmap is tracking
> +#
> +# @name: name of the dirty bitmap
> +#
> +# @granularity: #optional the bitmap granularity, default is 64k for
> +# dirty-bitmap-add
Optional, but only affects dirty-bitmap-add. You later document...
> +# @dirty-bitmap-remove
> +#
> +# Remove a dirty bitmap on the device
> +#
> +# Setting granularity has no effect here.
...that it is silently ignored where it can't be used here, and again in
7/9 for both dirty-bitmap-disable and dirty-bitmap-enable.
I think it would be smarter to do:
{ 'type': 'DirtyBitmap',
'data': { 'device': 'str', 'name': 'str' } }
{'command': 'dirty-bitmap-add',
'data': { 'map': 'DirtyBitmap', '*granularity': 'int' } }
Or:
{ 'type': 'DirtyBitmap',
'data': { 'device': 'str', 'name': 'str' } }
{ 'type': 'DirtyBitmapGranularity',
'base': 'DirtyBitmap',
'data': { '*granularity': 'int' } }
{'command': 'dirty-bitmap-add',
'data': 'DirtyBitmapGranularity' }
which says that the 'DirtyBitmap' struct has no optional members, and
instead of silently ignoring an optional member in 3 commands, we
instead write the one command that takes the optional argument when we
actually care about it.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 604 bytes --]
next prev parent reply other threads:[~2014-03-27 16:41 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-27 9:09 [Qemu-devel] [PATCH v4 0/9] QMP: Introduce incremental drive-backup with in-memory dirty bitmap Fam Zheng
2014-03-27 9:09 ` [Qemu-devel] [PATCH v4 1/9] qapi: Add optional field "name" to block " Fam Zheng
2014-03-27 15:30 ` Stefan Hajnoczi
2014-04-01 7:41 ` Fam Zheng
2014-03-27 9:09 ` [Qemu-devel] [PATCH v4 2/9] qmp: Add dirty-bitmap-add and dirty-bitmap-remove Fam Zheng
2014-03-27 15:43 ` Stefan Hajnoczi
2014-04-01 7:45 ` Fam Zheng
2014-03-27 16:09 ` Stefan Hajnoczi
2014-03-27 16:39 ` Dr. David Alan Gilbert
2014-04-01 7:48 ` Fam Zheng
2014-03-27 16:41 ` Eric Blake [this message]
2014-04-01 8:02 ` Fam Zheng
2014-03-27 9:09 ` [Qemu-devel] [PATCH v4 3/9] block: Handle error of bdrv_getlength in bdrv_create_dirty_bitmap Fam Zheng
2014-03-27 9:09 ` [Qemu-devel] [PATCH v4 4/9] block: Introduce bdrv_dirty_bitmap_granularity() Fam Zheng
2014-03-27 9:09 ` [Qemu-devel] [PATCH v4 5/9] hbitmap: Add hbitmap_copy Fam Zheng
2014-03-27 9:09 ` [Qemu-devel] [PATCH v4 6/9] block: Add bdrv_copy_dirty_bitmap and bdrv_reset_dirty_bitmap Fam Zheng
2014-03-28 8:04 ` Stefan Hajnoczi
2014-03-27 9:09 ` [Qemu-devel] [PATCH v4 7/9] qmp: Add dirty-bitmap-enable and dirty-bitmap-disable Fam Zheng
2014-03-27 16:46 ` Eric Blake
2014-04-01 8:16 ` Fam Zheng
2014-03-27 9:09 ` [Qemu-devel] [PATCH v4 8/9] qmp: Add support of "dirty-bitmap" sync mode for drive-backup Fam Zheng
2014-03-27 9:09 ` [Qemu-devel] [PATCH v4 9/9] qapi: Add transaction support to dirty-bitmap-{add, disable} Fam Zheng
2014-03-27 16:49 ` Eric Blake
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=533454C9.1000102@redhat.com \
--to=eblake@redhat.com \
--cc=benoit@irqsave.net \
--cc=famz@redhat.com \
--cc=kwolf@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.