All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wenchao Xia <xiawenc@linux.vnet.ibm.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: kwolf@redhat.com, stefanha@gmail.com, qemu-devel@nongnu.org,
	lcapitulino@redhat.com, pbonzini@redhat.com
Subject: Re: [Qemu-devel] [PATCH V11 05/17] block: add snapshot info query function bdrv_query_snapshot_info_list()
Date: Thu, 11 Apr 2013 11:19:41 +0800	[thread overview]
Message-ID: <51662BCD.5070207@linux.vnet.ibm.com> (raw)
In-Reply-To: <87wqsaxvwx.fsf@blackfin.pond.sub.org>

于 2013-4-10 23:11, Markus Armbruster 写道:
> Eric Blake <eblake@redhat.com> writes:
> 
>> On 04/02/2013 05:47 AM, Wenchao Xia wrote:
>>>    This patch adds function bdrv_query_snapshot_info_list(), which will
>>> retrieve snapshot info of an image in qmp object format. The implementation
>>> is based on the code moved from qemu-img.c with modification to fit more
>>> for qmp based block layer API.
>>>
>>> Signed-off-by: Wenchao Xia <xiawenc@linux.vnet.ibm.com>
>>> ---
>>>   block/qapi.c         |   55 ++++++++++++++++++++++++++++++++++++++-----------
>>>   include/block/qapi.h |    4 ++-
>>>   qemu-img.c           |    5 +++-
>>>   3 files changed, 49 insertions(+), 15 deletions(-)
>>
>>> +/*
>>> + * return 0 on success, @p_list will be set only on success, and caller need to
>>
>> s/need/needs/
>>
>>> + * check *p_list on success.
>>
>> I wonder if this wording would be any better:
>>
>> Returns 0 on success, with *p_list either set to describe snapshot
>> information, or NULL because there are no snapshots.  Returns -1 on
>> error, with *p_list untouched.
> 
> It actually returns -errno then, doesn't it?
> 
  Yes, I forgot change the comments in the version changing, thank you
for the carefully review.

>>
>>> + */
>>> +int bdrv_query_snapshot_info_list(BlockDriverState *bs,
>>> +                                  SnapshotInfoList **p_list,
>>> +                                  Error **errp)
>>>   {
>>
>> At any rate, my only commentary was on grammar and a possible wording
>> for a comment, while the code itself is fine from my viewpoint; so feel
>> free to add:
>>
>> Reviewed-by: Eric Blake <eblake@redhat.com>
>>
>>> +++ b/qemu-img.c
>>> @@ -1735,7 +1735,10 @@ static ImageInfoList
>>> *collect_image_info_list(const char *filename,
>>>   
>>>           info = g_new0(ImageInfo, 1);
>>>           bdrv_collect_image_info(bs, info, filename);
>>> -        bdrv_collect_snapshots(bs, info);
>>> +        if (!bdrv_query_snapshot_info_list(bs, &info->snapshots, NULL) &&
>>> +            info->snapshots) {
>>> +            info->has_snapshots = true;
>>> +        }
>>
>> Hmm.  info->snapshots starts life as NULL (thanks to g_new0), and is
>> untouched on error.  Since you are ignoring any errors, you technically
>> could write:
>>
>> bdrv_query_snapshot_info_list(bs, &info->snapshots, NULL);
>> if (info->snapshots) {
>>      info->has_snapshots = true;
>> }
>>
>> for the same semantics.  That means that as of this commit, no caller
>> cares about the return value of bdrv_query_snapshot_info_list (they only
>> care about whether info->snapshots was changed to non-null), so it could
>> return void for a slightly simpler implementation.
> 
> Return the list, or NULL.
> 
>> But I don't know if any later patches in the series start to care about
>> which error was returned.
> 
> Me neither :)
> 


-- 
Best Regards

Wenchao Xia

  reply	other threads:[~2013-04-11  3:20 UTC|newest]

Thread overview: 67+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-02 11:47 [Qemu-devel] [PATCH V11 00/17] qmp/hmp interfaces for internal snapshot info Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 01/17] block: move bdrv_snapshot_find() to block/snapshot.c Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 02/17] block: distinguish id and name in bdrv_find_snapshot() Wenchao Xia
2013-04-10 15:21   ` Markus Armbruster
2013-04-11  3:16     ` Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 03/17] qemu-img: remove unused parameter in collect_image_info() Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 04/17] block: move collect_snapshots() and collect_image_info() to block/qapi.c Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 05/17] block: add snapshot info query function bdrv_query_snapshot_info_list() Wenchao Xia
2013-04-03  1:17   ` Eric Blake
2013-04-03  5:24     ` Wenchao Xia
2013-04-10 15:11     ` Markus Armbruster
2013-04-11  3:19       ` Wenchao Xia [this message]
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 06/17] block: add check for VM snapshot in bdrv_query_snapshot_info_list() Wenchao Xia
2013-04-10 15:19   ` Markus Armbruster
2013-04-11  5:56     ` Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 07/17] block: add image info query function bdrv_query_image_info() Wenchao Xia
2013-04-10 15:28   ` Markus Armbruster
2013-04-11  5:59     ` Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 08/17] block: move qmp_query_block() and bdrv_query_info() to block/qapi.c Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 09/17] qmp: add interface query-snapshots Wenchao Xia
2013-04-08 13:28   ` Stefan Hajnoczi
2013-04-10 15:51   ` Markus Armbruster
2013-04-11  6:03     ` Wenchao Xia
2013-04-11 12:11       ` Markus Armbruster
2013-04-11 12:44         ` Luiz Capitulino
2013-04-11 13:08           ` Eric Blake
2013-04-11 13:39             ` Luiz Capitulino
2013-04-12  3:17               ` Wenchao Xia
2013-04-12  3:22                 ` Eric Blake
2013-04-12  9:39                   ` Wenchao Xia
2013-04-12 11:45                     ` Markus Armbruster
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 10/17] qmp: add recursive member in ImageInfo Wenchao Xia
2013-04-10 16:06   ` Markus Armbruster
2013-04-11  6:06     ` Wenchao Xia
2013-04-11  9:28       ` Markus Armbruster
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 11/17] qmp: add ImageInfo in BlockDeviceInfo used by query-block Wenchao Xia
2013-04-08 10:04   ` Kevin Wolf
2013-04-08 13:33   ` Stefan Hajnoczi
2013-04-10  7:30     ` Wenchao Xia
2013-04-11  8:54       ` Stefan Hajnoczi
2013-04-10 16:17     ` Markus Armbruster
2013-04-10 18:57       ` Luiz Capitulino
2013-04-11  6:25         ` Wenchao Xia
2013-04-11  9:31           ` Markus Armbruster
2013-04-12  3:25             ` Wenchao Xia
2013-04-10 16:27   ` Markus Armbruster
2013-04-11  6:20     ` Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 12/17] block: move bdrv_snapshot_dump() and dump_human_image_info() to block/qapi.c Wenchao Xia
2013-04-10 16:49   ` Markus Armbruster
2013-04-11  6:30     ` Wenchao Xia
2013-04-11  9:50       ` Markus Armbruster
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 13/17] block: dump to buffer for bdrv_snapshot_dump() and bdrv_image_info_dump() Wenchao Xia
2013-04-08 13:36   ` Stefan Hajnoczi
2013-04-10 16:56     ` Markus Armbruster
2013-04-10 17:05   ` Markus Armbruster
2013-04-11  6:35     ` Wenchao Xia
2013-04-11 12:05       ` Markus Armbruster
2013-04-12  4:51         ` Wenchao Xia
2013-04-12 11:51           ` Markus Armbruster
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 14/17] hmp: add function hmp_info_snapshots() Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 15/17] hmp: switch snapshot info function to qmp based one Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 16/17] hmp: show ImageInfo in 'info block' Wenchao Xia
2013-04-02 11:47 ` [Qemu-devel] [PATCH V11 17/17] hmp: add parameters device and -v for info block Wenchao Xia
2013-04-07  5:54 ` [Qemu-devel] [PATCH V11 00/17] qmp/hmp interfaces for internal snapshot info Wenchao Xia
2013-04-08 10:18 ` Kevin Wolf
2013-04-08 13:43 ` Stefan Hajnoczi
2013-04-11 12:17 ` Markus Armbruster

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=51662BCD.5070207@linux.vnet.ibm.com \
    --to=xiawenc@linux.vnet.ibm.com \
    --cc=armbru@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=lcapitulino@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@gmail.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.