qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Philippe Mathieu-Daudé" <philmd@redhat.com>
To: "Daniel P. Berrangé" <berrange@redhat.com>, qemu-devel@nongnu.org
Cc: Laurent Vivier <lvivier@redhat.com>,
	Thomas Huth <thuth@redhat.com>,
	Eduardo Habkost <ehabkost@redhat.com>,
	David Hildenbrand <david@redhat.com>,
	Michael Roth <michael.roth@amd.com>,
	Cornelia Huck <cohuck@redhat.com>,
	Richard Henderson <richard.henderson@linaro.org>,
	"Dr. David Alan Gilbert" <dgilbert@redhat.com>,
	Peter Xu <peterx@redhat.com>,
	Yuval Shaia <yuval.shaia.ml@gmail.com>,
	Halil Pasic <pasic@linux.ibm.com>,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	qemu-s390x@nongnu.org, Gerd Hoffmann <kraxel@redhat.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Eric Blake <eblake@redhat.com>,
	Markus Armbruster <armbru@redhat.com>
Subject: Re: [PATCH v4 06/22] monitor: introduce HumanReadableText and HMP support
Date: Tue, 2 Nov 2021 16:11:30 +0100	[thread overview]
Message-ID: <8057a01d-4fe3-cfe5-bed6-545d1990589a@redhat.com> (raw)
In-Reply-To: <20211028155457.967291-7-berrange@redhat.com>

On 10/28/21 17:54, Daniel P. Berrangé wrote:
> This provides a foundation on which to convert simple HMP commands to
> use QMP. The QMP implementation will generate formatted text targeted
> for human consumption, returning it in the HumanReadableText data type.
> 
> The HMP command handler will simply print out the formatted string
> within the HumanReadableText data type. Since this will be an entirely
> formulaic action in the case of HMP commands taking no arguemnts, a
> custom command handler is provided.
> 
> Thus instead of registering a 'cmd' callback for the HMP command, a
> 'cmd_info_hrt' callback is provided, which will simply be a pointer
> to the QMP implementation.
> 
> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
> ---
>  include/monitor/hmp.h       |  3 +++
>  include/monitor/monitor.h   |  2 ++
>  include/qapi/type-helpers.h | 14 ++++++++++++++
>  monitor/hmp.c               | 31 ++++++++++++++++++++++++++++---
>  monitor/misc.c              | 18 +++++++++++++++++-
>  monitor/monitor-internal.h  |  7 +++++++
>  qapi/common.json            | 11 +++++++++++
>  qapi/meson.build            |  3 +++
>  qapi/qapi-type-helpers.c    | 23 +++++++++++++++++++++++
>  9 files changed, 108 insertions(+), 4 deletions(-)
>  create mode 100644 include/qapi/type-helpers.h
>  create mode 100644 qapi/qapi-type-helpers.c

> diff --git a/monitor/hmp.c b/monitor/hmp.c
> index d50c3124e1..352a4d9c80 100644
> --- a/monitor/hmp.c
> +++ b/monitor/hmp.c
> @@ -1061,6 +1061,31 @@ fail:
>      return NULL;
>  }
>  
> +static void hmp_info_human_readable_text(Monitor *mon,
> +                                         HumanReadableText *(*handler)(Error **))
> +{
> +    Error *err = NULL;
> +    g_autoptr(HumanReadableText) info = handler(&err);
> +
> +    if (hmp_handle_error(mon, err)) {
> +        return;
> +    }
> +
> +    monitor_printf(mon, "%s", info->human_readable_text);
> +}

Missing:

-- >8 --
diff --git a/monitor/hmp.c b/monitor/hmp.c
--- a/monitor/hmp.c
+++ b/monitor/hmp.c
@@ -35,6 +35,7 @@
 #include "qemu/log.h"
 #include "qemu/option.h"
 #include "qemu/units.h"
+#include "monitor/hmp.h"
 #include "sysemu/block-backend.h"
 #include "sysemu/runstate.h"
 #include "trace.h"
---

to avoid:

monitor/hmp.c: In function ‘hmp_info_human_readable_text’:
monitor/hmp.c:1070:9: error: implicit declaration of function
‘hmp_handle_error’ [-Werror=implicit-function-declaration]
 1070 |     if (hmp_handle_error(mon, err)) {
      |         ^~~~~~~~~~~~~~~~
monitor/hmp.c:1070:9: error: nested extern declaration of
‘hmp_handle_error’ [-Werror=nested-externs]
cc1: all warnings being treated as errors



  parent reply	other threads:[~2021-11-02 15:29 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-28 15:54 [PATCH v4 00/22] monitor: explicitly permit QMP commands to be added for all use cases Daniel P. Berrangé
2021-10-28 15:54 ` [PATCH v4 01/22] monitor: remove 'info ioapic' HMP command Daniel P. Berrangé
2021-10-29  2:02   ` Peter Xu
2021-10-28 15:54 ` [PATCH v4 02/22] monitor: make hmp_handle_error return a boolean Daniel P. Berrangé
2021-10-28 16:04   ` Dr. David Alan Gilbert
2021-10-28 16:47   ` Philippe Mathieu-Daudé
2021-11-01 15:54     ` Daniel P. Berrangé
2021-10-28 15:54 ` [PATCH v4 03/22] docs/devel: rename file for writing monitor commands Daniel P. Berrangé
2021-10-28 17:09   ` Philippe Mathieu-Daudé
2021-10-28 15:54 ` [PATCH v4 04/22] docs/devel: tweak headings in monitor command docs Daniel P. Berrangé
2021-10-28 15:54 ` [PATCH v4 05/22] docs/devel: update error handling guidance for HMP commands Daniel P. Berrangé
2021-10-28 16:14   ` Dr. David Alan Gilbert
2021-10-28 15:54 ` [PATCH v4 06/22] monitor: introduce HumanReadableText and HMP support Daniel P. Berrangé
2021-10-28 16:54   ` Philippe Mathieu-Daudé
2021-11-02 15:11   ` Philippe Mathieu-Daudé [this message]
2021-10-28 15:54 ` [PATCH v4 07/22] docs/devel: document expectations for QAPI data modelling for QMP Daniel P. Berrangé
2021-11-04 20:32   ` Eric Blake
2021-10-28 15:54 ` [PATCH v4 08/22] docs/devel: add example of command returning unstructured text Daniel P. Berrangé
2021-10-28 15:54 ` [PATCH v4 09/22] docs/devel: document expectations for HMP commands in the future Daniel P. Berrangé
2021-10-28 15:54 ` [PATCH v4 10/22] qapi: introduce x-query-roms QMP command Daniel P. Berrangé
2021-10-28 16:55   ` Philippe Mathieu-Daudé
2021-10-28 15:54 ` [PATCH v4 11/22] qapi: introduce x-query-profile " Daniel P. Berrangé
2021-10-29 11:29   ` Philippe Mathieu-Daudé
2021-10-28 15:54 ` [PATCH v4 12/22] qapi: introduce x-query-numa " Daniel P. Berrangé
2021-10-29 11:28   ` Philippe Mathieu-Daudé
2021-10-28 15:54 ` [PATCH v4 13/22] qapi: introduce x-query-usb " Daniel P. Berrangé
2021-10-28 16:57   ` Philippe Mathieu-Daudé
2021-10-28 15:54 ` [PATCH v4 14/22] qapi: introduce x-query-rdma " Daniel P. Berrangé
2021-10-29 11:26   ` Philippe Mathieu-Daudé
2021-10-28 15:54 ` [PATCH v4 15/22] qapi: introduce x-query-ramblock " Daniel P. Berrangé
2021-10-28 16:58   ` Philippe Mathieu-Daudé
2021-10-28 15:54 ` [PATCH v4 16/22] qapi: introduce x-query-skeys " Daniel P. Berrangé
2021-11-02 15:02   ` Philippe Mathieu-Daudé
2021-11-02 16:05     ` Daniel P. Berrangé
2021-10-28 15:54 ` [PATCH v4 17/22] qapi: introduce x-query-cmma " Daniel P. Berrangé
2021-10-28 17:00   ` Philippe Mathieu-Daudé
2021-11-02 14:53   ` Philippe Mathieu-Daudé
2021-10-28 15:54 ` [PATCH v4 18/22] hmp: synchronize cpu state for lapic info Daniel P. Berrangé
2023-10-26 16:50   ` Woodhouse, David via
2023-10-26 16:50     ` Woodhouse, David
2021-10-28 15:54 ` [PATCH v4 19/22] qapi: introduce x-query-lapic QMP command Daniel P. Berrangé
2021-10-28 15:54 ` [PATCH v4 20/22] qapi: introduce x-query-irq " Daniel P. Berrangé
2021-11-02 14:57   ` Philippe Mathieu-Daudé
2021-11-02 16:02     ` Daniel P. Berrangé
2021-10-28 15:54 ` [PATCH v4 21/22] qapi: introduce x-query-jit " Daniel P. Berrangé
2021-10-28 17:05   ` Philippe Mathieu-Daudé
2021-10-28 15:54 ` [PATCH v4 22/22] qapi: introduce x-query-opcount " Daniel P. Berrangé
2021-10-28 17:08   ` Philippe Mathieu-Daudé
2021-11-01 15:58     ` Daniel P. Berrangé

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=8057a01d-4fe3-cfe5-bed6-545d1990589a@redhat.com \
    --to=philmd@redhat.com \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=borntraeger@de.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=david@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=eblake@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=michael.roth@amd.com \
    --cc=pasic@linux.ibm.com \
    --cc=pbonzini@redhat.com \
    --cc=peterx@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=thuth@redhat.com \
    --cc=yuval.shaia.ml@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).