All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: Luiz Capitulino <lcapitulino@redhat.com>
Cc: kwolf@redhat.com, mdroth@linux.vnet.ibm.com,
	Anthony Liguori <aliguori@us.ibm.com>,
	armbru@redhat.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 12/21] qapi: Convert query-version
Date: Thu, 29 Sep 2011 09:42:07 -0500	[thread overview]
Message-ID: <4E8483BF.8010806@codemonkey.ws> (raw)
In-Reply-To: <20110929113222.249104f5@doriath>

On 09/29/2011 09:32 AM, Luiz Capitulino wrote:
> On Thu, 29 Sep 2011 07:54:57 -0500
> Anthony Liguori<aliguori@us.ibm.com>  wrote:
>
>> On 09/28/2011 09:44 AM, Luiz Capitulino wrote:
>>> The original conversion was done by Anthony Liguori. This commit
>>> is just a rebase.
>>
>> For all of the rest of the patches, you can add my Signed-off-by: before your
>> SoB.  Then you don't need to have the disclaimer in the commit message.
>
> And I let the author as being me?

Sure.

Regards,

Anthony Liguori

>
>>
>> Regards,
>>
>> Anthony Liguori
>>
>>>
>>> Signed-off-by: Luiz Capitulino<lcapitulino@redhat.com>
>>> ---
>>>    hmp.c            |   13 +++++++++++++
>>>    hmp.h            |    1 +
>>>    monitor.c        |   46 +++-------------------------------------------
>>>    qapi-schema.json |   37 +++++++++++++++++++++++++++++++++++++
>>>    qmp-commands.hx  |    6 ++++++
>>>    qmp.c            |   16 ++++++++++++++++
>>>    6 files changed, 76 insertions(+), 43 deletions(-)
>>>
>>> diff --git a/hmp.c b/hmp.c
>>> index 47e1ff7..bb6c86f 100644
>>> --- a/hmp.c
>>> +++ b/hmp.c
>>> @@ -24,3 +24,16 @@ void hmp_info_name(Monitor *mon)
>>>        }
>>>        qapi_free_NameInfo(info);
>>>    }
>>> +
>>> +void hmp_info_version(Monitor *mon)
>>> +{
>>> +    VersionInfo *info;
>>> +
>>> +    info = qmp_query_version(NULL);
>>> +
>>> +    monitor_printf(mon, "%" PRId64 ".%" PRId64 ".%" PRId64 "%s\n",
>>> +                   info->qemu.major, info->qemu.minor, info->qemu.micro,
>>> +                   info->package);
>>> +
>>> +    qapi_free_VersionInfo(info);
>>> +}
>>> diff --git a/hmp.h b/hmp.h
>>> index 5fe73f1..2aa75a2 100644
>>> --- a/hmp.h
>>> +++ b/hmp.h
>>> @@ -18,5 +18,6 @@
>>>    #include "qapi-types.h"
>>>
>>>    void hmp_info_name(Monitor *mon);
>>> +void hmp_info_version(Monitor *mon);
>>>
>>>    #endif
>>> diff --git a/monitor.c b/monitor.c
>>> index 8af0e27..9edc38c 100644
>>> --- a/monitor.c
>>> +++ b/monitor.c
>>> @@ -730,37 +730,6 @@ help:
>>>        help_cmd(mon, "info");
>>>    }
>>>
>>> -static void do_info_version_print(Monitor *mon, const QObject *data)
>>> -{
>>> -    QDict *qdict;
>>> -    QDict *qemu;
>>> -
>>> -    qdict = qobject_to_qdict(data);
>>> -    qemu = qdict_get_qdict(qdict, "qemu");
>>> -
>>> -    monitor_printf(mon, "%" PRId64 ".%" PRId64 ".%" PRId64 "%s\n",
>>> -                  qdict_get_int(qemu, "major"),
>>> -                  qdict_get_int(qemu, "minor"),
>>> -                  qdict_get_int(qemu, "micro"),
>>> -                  qdict_get_str(qdict, "package"));
>>> -}
>>> -
>>> -static void do_info_version(Monitor *mon, QObject **ret_data)
>>> -{
>>> -    const char *version = QEMU_VERSION;
>>> -    int major = 0, minor = 0, micro = 0;
>>> -    char *tmp;
>>> -
>>> -    major = strtol(version,&tmp, 10);
>>> -    tmp++;
>>> -    minor = strtol(tmp,&tmp, 10);
>>> -    tmp++;
>>> -    micro = strtol(tmp,&tmp, 10);
>>> -
>>> -    *ret_data = qobject_from_jsonf("{ 'qemu': { 'major': %d, 'minor': %d, \
>>> -        'micro': %d }, 'package': %s }", major, minor, micro, QEMU_PKGVERSION);
>>> -}
>>> -
>>>    static QObject *get_cmd_dict(const char *name)
>>>    {
>>>        const char *p;
>>> @@ -2866,8 +2835,7 @@ static const mon_cmd_t info_cmds[] = {
>>>            .args_type  = "",
>>>            .params     = "",
>>>            .help       = "show the version of QEMU",
>>> -        .user_print = do_info_version_print,
>>> -        .mhandler.info_new = do_info_version,
>>> +        .mhandler.info = hmp_info_version,
>>>        },
>>>        {
>>>            .name       = "network",
>>> @@ -3159,14 +3127,6 @@ static const mon_cmd_t qmp_cmds[] = {
>>>
>>>    static const mon_cmd_t qmp_query_cmds[] = {
>>>        {
>>> -        .name       = "version",
>>> -        .args_type  = "",
>>> -        .params     = "",
>>> -        .help       = "show the version of QEMU",
>>> -        .user_print = do_info_version_print,
>>> -        .mhandler.info_new = do_info_version,
>>> -    },
>>> -    {
>>>            .name       = "commands",
>>>            .args_type  = "",
>>>            .params     = "",
>>> @@ -5172,9 +5132,9 @@ void monitor_resume(Monitor *mon)
>>>
>>>    static QObject *get_qmp_greeting(void)
>>>    {
>>> -    QObject *ver;
>>> +    QObject *ver = NULL;
>>>
>>> -    do_info_version(NULL,&ver);
>>> +    qmp_marshal_input_query_version(NULL, NULL,&ver);
>>>        return qobject_from_jsonf("{'QMP':{'version': %p,'capabilities': []}}",ver);
>>>    }
>>>
>>> diff --git a/qapi-schema.json b/qapi-schema.json
>>> index 3585324..3c0ac4e 100644
>>> --- a/qapi-schema.json
>>> +++ b/qapi-schema.json
>>> @@ -23,3 +23,40 @@
>>>    # Since 0.14.0
>>>    ##
>>>    { 'command': 'query-name', 'returns': 'NameInfo' }
>>> +
>>> +##
>>> +# @VersionInfo:
>>> +#
>>> +# A description of QEMU's version.
>>> +#
>>> +# @qemu.major:  The major version of QEMU
>>> +#
>>> +# @qemu.minor:  The minor version of QEMU
>>> +#
>>> +# @qemu.micro:  The micro version of QEMU.  By current convention, a micro
>>> +#               version of 50 signifies a development branch.  A micro version
>>> +#               greater than or equal to 90 signifies a release candidate for
>>> +#               the next minor version.  A micro version of less than 50
>>> +#               signifies a stable release.
>>> +#
>>> +# @package:     QEMU will always set this field to an empty string.  Downstream
>>> +#               versions of QEMU should set this to a non-empty string.  The
>>> +#               exact format depends on the downstream however it highly
>>> +#               recommended that a unique name is used.
>>> +#
>>> +# Since: 0.14.0
>>> +##
>>> +{ 'type': 'VersionInfo',
>>> +  'data': {'qemu': {'major': 'int', 'minor': 'int', 'micro': 'int'},
>>> +           'package': 'str'} }
>>> +
>>> +##
>>> +# @query-version:
>>> +#
>>> +# Returns the current version of QEMU.
>>> +#
>>> +# Returns:  A @VersionInfo object describing the current version of QEMU.
>>> +#
>>> +# Since: 0.14.0
>>> +##
>>> +{ 'command': 'query-version', 'returns': 'VersionInfo' }
>>> diff --git a/qmp-commands.hx b/qmp-commands.hx
>>> index 7b3839e..9f067ea 100644
>>> --- a/qmp-commands.hx
>>> +++ b/qmp-commands.hx
>>> @@ -1053,6 +1053,12 @@ Example:
>>>
>>>    EQMP
>>>
>>> +    {
>>> +        .name       = "query-version",
>>> +        .args_type  = "",
>>> +        .mhandler.cmd_new = qmp_marshal_input_query_version,
>>> +    },
>>> +
>>>    SQMP
>>>    query-commands
>>>    --------------
>>> diff --git a/qmp.c b/qmp.c
>>> index 8aa9c66..f978ea4 100644
>>> --- a/qmp.c
>>> +++ b/qmp.c
>>> @@ -26,3 +26,19 @@ NameInfo *qmp_query_name(Error **errp)
>>>
>>>        return info;
>>>    }
>>> +
>>> +VersionInfo *qmp_query_version(Error **err)
>>> +{
>>> +    VersionInfo *info = g_malloc0(sizeof(*info));
>>> +    const char *version = QEMU_VERSION;
>>> +    char *tmp;
>>> +
>>> +    info->qemu.major = strtol(version,&tmp, 10);
>>> +    tmp++;
>>> +    info->qemu.minor = strtol(tmp,&tmp, 10);
>>> +    tmp++;
>>> +    info->qemu.micro = strtol(tmp,&tmp, 10);
>>> +    info->package = g_strdup(QEMU_PKGVERSION);
>>> +
>>> +    return info;
>>> +}
>>
>
>

  reply	other threads:[~2011-09-29 14:42 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-28 14:44 [Qemu-devel] [PATCH v1 00/21]: First round of QAPI conversions Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 01/21] error: let error_is_type take a NULL error Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 02/21] qerror: add qerror_report_err() Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 03/21] qapi: add code generation support for middle mode Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 04/21] qapi: use middle mode in QMP server Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 05/21] qapi: fixup command generation for functions that return list types Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 06/21] qapi: dealloc visitor, fix premature free and iteration logic Luiz Capitulino
2011-09-29 12:49   ` Anthony Liguori
2011-09-28 14:44 ` [Qemu-devel] [PATCH 07/21] qapi: generate qapi_free_* functions for *List types Luiz Capitulino
2011-09-29 12:50   ` Anthony Liguori
2011-09-28 14:44 ` [Qemu-devel] [PATCH 08/21] qapi: add test cases for generated free functions Luiz Capitulino
2011-09-29 12:51   ` Anthony Liguori
2011-09-28 14:44 ` [Qemu-devel] [PATCH 09/21] qapi: dealloc visitor, support freeing of nested lists Luiz Capitulino
2011-09-29 12:51   ` Anthony Liguori
2011-09-28 14:44 ` [Qemu-devel] [PATCH 10/21] qapi: modify visitor code generation for list iteration Luiz Capitulino
2011-09-29 12:53   ` Anthony Liguori
2011-09-28 14:44 ` [Qemu-devel] [PATCH 11/21] qapi: convert query-name Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 12/21] qapi: Convert query-version Luiz Capitulino
2011-09-29 12:54   ` Anthony Liguori
2011-09-29 14:32     ` Luiz Capitulino
2011-09-29 14:42       ` Anthony Liguori [this message]
2011-09-28 14:44 ` [Qemu-devel] [PATCH 13/21] qapi: Convert query-kvm Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 14/21] qapi: Convert query-status Luiz Capitulino
2011-09-29 20:11   ` Michael Roth
2011-09-28 14:44 ` [Qemu-devel] [PATCH 15/21] qapi: Convert query-uuid Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 16/21] qapi: Convert query-chardev Luiz Capitulino
2011-09-29 19:17   ` Michael Roth
2011-09-28 14:44 ` [Qemu-devel] [PATCH 17/21] qapi: Convert query-commands Luiz Capitulino
2011-09-29 19:25   ` Michael Roth
2011-09-28 14:44 ` [Qemu-devel] [PATCH 18/21] qapi: Convert quit Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 19/21] qapi: Convert stop Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 20/21] qapi: Convert system_reset Luiz Capitulino
2011-09-28 14:44 ` [Qemu-devel] [PATCH 21/21] qapi: Convert system_powerdown Luiz Capitulino
2011-09-29 12:55 ` [Qemu-devel] [PATCH v1 00/21]: First round of QAPI conversions Anthony Liguori
2011-09-29 13:52   ` Luiz Capitulino
2011-09-29 20:15     ` Michael Roth
2011-09-29 20:57       ` Luiz Capitulino

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=4E8483BF.8010806@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=aliguori@us.ibm.com \
    --cc=armbru@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=lcapitulino@redhat.com \
    --cc=mdroth@linux.vnet.ibm.com \
    --cc=qemu-devel@nongnu.org \
    /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.