All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laszlo Ersek <lersek@redhat.com>
To: qiaonuohan <qiaonuohan@cn.fujitsu.com>
Cc: stefanha@gmail.com, qemu-devel@nongnu.org,
	lcapitulino@redhat.com, anderson@redhat.com,
	kumagai-atsushi@mxc.nes.nec.co.jp, afaerber@suse.de
Subject: Re: [Qemu-devel] [PATCH 13/13 v7] dump: add 'query-dump-guest-memory-capability' command
Date: Fri, 24 Jan 2014 13:31:04 +0100	[thread overview]
Message-ID: <52E25D08.8010807@redhat.com> (raw)
In-Reply-To: <1389944779-31899-14-git-send-email-qiaonuohan@cn.fujitsu.com>

two comments below

On 01/17/14 08:46, qiaonuohan wrote:
> 'query-dump-guest-memory-capability' is used to query whether option 'format'
> is available for 'dump-guest-memory' and the available format. The output
> of the command will be like:
> 
> -> { "execute": "query-dump-guest-memory-capability" }
> <- { "return": {
>         "format-option": "optional",
>         "capabilities": [
>             {"available": true, "format": "elf"},
>             {"available": true, "format": "kdump-zlib"},
>             {"available": true, "format": "kdump-lzo"},
>             {"available": true, "format": "kdump-snappy"}
>         ]
>     }
> 
> Signed-off-by: Qiao Nuohan <qiaonuohan@cn.fujitsu.com>
> ---
>  dump.c           |   42 ++++++++++++++++++++++++++++++++++++++++++
>  qapi-schema.json |   13 +++++++++++++
>  qmp-commands.hx  |   31 +++++++++++++++++++++++++++++++
>  3 files changed, 86 insertions(+), 0 deletions(-)
> 
> diff --git a/dump.c b/dump.c
> index dbf4bb6..c288cd3 100644
> --- a/dump.c
> +++ b/dump.c
> @@ -1794,3 +1794,45 @@ void qmp_dump_guest_memory(bool paging, const char *file, bool has_begin,
>  
>      g_free(s);
>  }
> +
> +DumpGuestMemoryCapability *qmp_query_dump_guest_memory_capability(Error **errp)
> +{
> +    int i;
> +    DumpGuestMemoryCapabilityStatusList *item;
> +    DumpGuestMemoryCapability *cap =
> +                                  g_malloc0(sizeof(DumpGuestMemoryCapability));
> +
> +    cap->format_option = g_strdup_printf("optional");
> +
> +    for (i = 0; i < DUMP_GUEST_MEMORY_FORMAT_MAX; i++) {
> +        if (cap->capabilities == NULL) {
> +            item = g_malloc0(sizeof(DumpGuestMemoryCapabilityStatusList));
> +            cap->capabilities = item;
> +        } else {
> +            item->next = g_malloc0(sizeof(DumpGuestMemoryCapabilityStatusList));
> +            item = item->next;
> +        }
> +
> +        item->value = g_malloc0(sizeof(struct DumpGuestMemoryCapabilityStatus));
> +        item->value->format = i;
> +
> +        if (i == DUMP_GUEST_MEMORY_FORMAT_ELF || i ==
> +            DUMP_GUEST_MEMORY_FORMAT_KDUMP_ZLIB) {

Line wrapping hiccup.

> +            item->value->available = true;
> +        }
> +
> +#ifdef CONFIG_LZO
> +        if (i == DUMP_GUEST_MEMORY_FORMAT_KDUMP_LZO) {
> +            item->value->available = true;
> +        }
> +#endif
> +
> +#ifdef CONFIG_SNAPPY
> +        if (i == DUMP_GUEST_MEMORY_FORMAT_KDUMP_SNAPPY) {
> +            item->value->available = true;
> +        }
> +#endif
> +    }
> +
> +    return cap;
> +}
> diff --git a/qapi-schema.json b/qapi-schema.json
> index 52df894..3085294 100644
> --- a/qapi-schema.json
> +++ b/qapi-schema.json
> @@ -2744,6 +2744,19 @@
>              '*length': 'int', '*format': 'DumpGuestMemoryFormat' } }
>  
>  ##
> +# Since: 2.0
> +##
> +{ 'type':  'DumpGuestMemoryCapabilityStatus',
> +  'data': { 'format': 'DumpGuestMemoryFormat', 'available': 'bool' } }
> +
> +{ 'type': 'DumpGuestMemoryCapability',
> +  'data': {
> +      'format-option': 'str',
> +      'capabilities': ['DumpGuestMemoryCapabilityStatus'] } }
> +
> +{ 'command': 'query-dump-guest-memory-capability', 'returns': 'DumpGuestMemoryCapability' }
> +
> +##
>  # @netdev_add:
>  #
>  # Add a network backend.
> diff --git a/qmp-commands.hx b/qmp-commands.hx
> index 9158f22..ad51de0 100644
> --- a/qmp-commands.hx
> +++ b/qmp-commands.hx
> @@ -829,6 +829,37 @@ Notes:
>  EQMP
>  
>      {
> +        .name       = "query-dump-guest-memory-capability",
> +        .args_type  = "",
> +        .mhandler.cmd_new = qmp_marshal_input_query_dump_guest_memory_capability,
> +    },
> +
> +SQMP
> +query-dump-guest-memory-capability
> +----------
> +
> +Show whether option 'format' is available for 'dump-guest-memory' and the
> +available format.
> +
> +Example:
> +
> +-> { "execute": "query-dump-guest-memory-capability" }
> +<- { "return": {
> +        "format-option": "optional",
> +        "capabilities": [
> +            {"available": true, "format": "elf"},
> +            {"available": true, "format": "kdump-zlib"},
> +            {"available": true, "format": "kdump-lzo"},
> +            {"available": true, "format": "kdump-snappy"}
> +        ]
> +    }
> +
> +Note: This is a light-weight introspection to let management know whether format
> +      option is available and the supported compression format.
> +
> +EQMP
> +
> +    {
>          .name       = "netdev_add",
>          .args_type  = "netdev:O",
>          .mhandler.cmd_new = qmp_netdev_add,
> 

Although in general I don't like to obsess about English grammar, this
should say available / supported "formats", plural (two instances in the
above text).

I'm only proposing these because you'll respin anyway, but I don't
insist. If you change nothing else in this patch, then you can add my

Reviewed-by: Laszlo Ersek <lersek@redhat.com>

Thanks!
Laszlo

  reply	other threads:[~2014-01-24 12:31 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-17  7:46 [Qemu-devel] [PATCH 00/13 v7] Make 'dump-guest-memory' dump in kdump-compressed format qiaonuohan
2014-01-17  7:46 ` [Qemu-devel] [PATCH 01/13 v7] dump: const-qualify the buf of WriteCoreDumpFunction qiaonuohan
2014-01-22 15:48   ` Laszlo Ersek
2014-01-17  7:46 ` [Qemu-devel] [PATCH 02/13 v7] dump: add argument to write_elfxx_notes qiaonuohan
2014-01-22 15:56   ` Laszlo Ersek
2014-01-17  7:46 ` [Qemu-devel] [PATCH 03/13 v7] dump: add API to write header of flatten format qiaonuohan
2014-01-22 16:03   ` Laszlo Ersek
2014-01-17  7:46 ` [Qemu-devel] [PATCH 04/13 v7] dump: add API to write vmcore qiaonuohan
2014-01-22 16:06   ` Laszlo Ersek
2014-01-17  7:46 ` [Qemu-devel] [PATCH 05/13 v7] dump: add API to write elf notes to buffer qiaonuohan
2014-01-22 16:09   ` Laszlo Ersek
2014-01-17  7:46 ` [Qemu-devel] [PATCH 06/13 v7] dump: add support for lzo/snappy qiaonuohan
2014-01-22 16:12   ` Laszlo Ersek
2014-01-17  7:46 ` [Qemu-devel] [PATCH 07/13 v7] dump: add members to DumpState and init some of them qiaonuohan
2014-01-22 17:04   ` Laszlo Ersek
2014-01-24  1:52     ` Qiao Nuohan
2014-01-24 10:00       ` Laszlo Ersek
2014-01-17  7:46 ` [Qemu-devel] [PATCH 08/13 v7] dump: add API to write dump header qiaonuohan
2014-01-22 18:07   ` Laszlo Ersek
2014-01-23 14:29   ` Ekaterina Tumanova
2014-01-17  7:46 ` [Qemu-devel] [PATCH 09/13 v7] dump: add API to write dump_bitmap qiaonuohan
2014-01-23 13:56   ` Laszlo Ersek
2014-01-17  7:46 ` [Qemu-devel] [PATCH 10/13 v7] dump: add APIs to operate DataCache qiaonuohan
2014-01-23 14:50   ` Laszlo Ersek
2014-01-17  7:46 ` [Qemu-devel] [PATCH 11/13 v7] dump: add API to write dump pages qiaonuohan
2014-01-23 15:32   ` Laszlo Ersek
2014-01-17  7:46 ` [Qemu-devel] [PATCH 12/13 v7] dump: make kdump-compressed format available for 'dump-guest-memory' qiaonuohan
2014-01-23 15:17   ` Ekaterina Tumanova
2014-01-24 11:27     ` Laszlo Ersek
2014-01-24 12:06   ` Laszlo Ersek
2014-01-17  7:46 ` [Qemu-devel] [PATCH 13/13 v7] dump: add 'query-dump-guest-memory-capability' command qiaonuohan
2014-01-24 12:31   ` Laszlo Ersek [this message]
2014-01-17  8:50 ` [Qemu-devel] [PATCH 00/13 v7] Make 'dump-guest-memory' dump in kdump-compressed format Christian Borntraeger
2014-01-17  9:04   ` Qiao Nuohan
2014-01-21  9:56 ` Qiao Nuohan
2014-01-21 10:14   ` Laszlo Ersek
2014-01-22  1:27     ` Qiao Nuohan

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=52E25D08.8010807@redhat.com \
    --to=lersek@redhat.com \
    --cc=afaerber@suse.de \
    --cc=anderson@redhat.com \
    --cc=kumagai-atsushi@mxc.nes.nec.co.jp \
    --cc=lcapitulino@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qiaonuohan@cn.fujitsu.com \
    --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.