From: marcandre.lureau@redhat.com
To: qemu-devel@nongnu.org
Cc: eblake@redhat.com, armbru@redhat.com,
"Marc-André Lureau" <marcandre.lureau@redhat.com>
Subject: [Qemu-devel] [PATCH v3 11/15] qmp: update qmp_query_spice fallback
Date: Mon, 8 Aug 2016 18:14:35 +0400 [thread overview]
Message-ID: <20160808141439.16908-12-marcandre.lureau@redhat.com> (raw)
In-Reply-To: <20160808141439.16908-1-marcandre.lureau@redhat.com>
From: Marc-André Lureau <marcandre.lureau@redhat.com>
The following "use qmp_dispatch()" commit will use the generated
dispatch command table that is unaware of compile time conditionals.
There are a few commands that are under #ifdef conditions in
qmp-commands.hx. Move the qmp_query_spice fallback in the same location
as the other fallbacks, return an error instead of abort() and update
the comment.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
monitor.c | 14 ++++++++++++++
qmp.c | 16 ----------------
2 files changed, 14 insertions(+), 16 deletions(-)
diff --git a/monitor.c b/monitor.c
index e7549b1..5e7ae21 100644
--- a/monitor.c
+++ b/monitor.c
@@ -4303,6 +4303,20 @@ QemuOptsList qemu_mon_opts = {
},
};
+/*
+ * the QAPI schema is blissfully unaware #ifdef FOO commands, and the
+ * QAPI code generator happily generates a qmp_marshal_foo_cmd() that
+ * calls qmp_foo_cmd(). Provide it one, or else linking fails. FIXME
+ * Educate the QAPI schema on #ifdef commands.
+ */
+#ifndef CONFIG_SPICE
+SpiceInfo *qmp_query_spice(Error **errp)
+{
+ error_setg(errp, QERR_FEATURE_DISABLED, "spice");
+ return NULL;
+};
+#endif
+
#ifndef TARGET_I386
void qmp_rtc_reset_reinjection(Error **errp)
{
diff --git a/qmp.c b/qmp.c
index b6d531e..884d1ab 100644
--- a/qmp.c
+++ b/qmp.c
@@ -161,22 +161,6 @@ VncInfo2List *qmp_query_vnc_servers(Error **errp)
};
#endif
-#ifndef CONFIG_SPICE
-/*
- * qmp-commands.hx ensures that QMP command query-spice exists only
- * #ifdef CONFIG_SPICE. Necessary for an accurate query-commands
- * result. However, the QAPI schema is blissfully unaware of that,
- * and the QAPI code generator happily generates a dead
- * qmp_marshal_query_spice() that calls qmp_query_spice(). Provide it
- * one, or else linking fails. FIXME Educate the QAPI schema on
- * CONFIG_SPICE.
- */
-SpiceInfo *qmp_query_spice(Error **errp)
-{
- abort();
-};
-#endif
-
void qmp_cont(Error **errp)
{
Error *local_err = NULL;
--
2.9.0
next prev parent reply other threads:[~2016-08-08 14:15 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-08 14:14 [Qemu-devel] [PATCH v3 00/15] qapi: remove the 'middle' mode marcandre.lureau
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 01/15] qapi-schema: use generated marshaller for 'qmp_capabilities' marcandre.lureau
2016-08-09 11:22 ` Markus Armbruster
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 02/15] qapi-schema: add 'device_add' marcandre.lureau
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 03/15] monitor: register gen:false commands manually marcandre.lureau
2016-08-09 7:52 ` Markus Armbruster
2016-08-09 17:16 ` Marc-André Lureau
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 04/15] monitor: remove usage of generated marshal functions marcandre.lureau
2016-08-09 8:36 ` Markus Armbruster
2016-08-09 8:43 ` Marc-André Lureau
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 05/15] qapi: add 'export-marshal' command key marcandre.lureau
2016-08-09 8:05 ` Markus Armbruster
2016-08-09 8:38 ` Marc-André Lureau
2016-08-09 14:35 ` Markus Armbruster
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 06/15] monitor: register the qapi generated commands marcandre.lureau
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 07/15] monitor: remove mhandler.cmd_new marcandre.lureau
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 08/15] monitor: implement 'qmp_query_commands' without qmp_cmds marcandre.lureau
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 09/15] qapi: remove the "middle" mode marcandre.lureau
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 10/15] qapi: check invalid arguments on no-args commands marcandre.lureau
2016-08-09 12:11 ` Markus Armbruster
2016-08-09 12:20 ` Marc-André Lureau
2016-08-08 14:14 ` marcandre.lureau [this message]
2016-08-09 12:38 ` [Qemu-devel] [PATCH v3 11/15] qmp: update qmp_query_spice fallback Markus Armbruster
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 12/15] monitor: use qmp_dispatch() marcandre.lureau
2016-08-09 12:43 ` Markus Armbruster
2016-08-09 12:48 ` Daniel P. Berrange
2016-08-09 12:50 ` Marc-André Lureau
2016-08-09 14:29 ` Markus Armbruster
2016-08-09 14:41 ` Marc-André Lureau
2016-08-09 16:27 ` Markus Armbruster
2016-08-09 19:35 ` Marc-André Lureau
2016-08-10 10:17 ` Markus Armbruster
2016-08-10 15:28 ` Marc-André Lureau
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 13/15] build-sys: remove qmp-commands-old.h marcandre.lureau
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 14/15] Drop qmp-commands.hx marcandre.lureau
2016-08-09 13:08 ` Markus Armbruster
2016-08-09 13:35 ` Marc-André Lureau
2016-08-17 15:01 ` Markus Armbruster
2016-08-08 14:14 ` [Qemu-devel] [PATCH v3 15/15] qmp-commands.txt: fix some styling marcandre.lureau
2016-08-08 14:55 ` [Qemu-devel] [PATCH v3 00/15] qapi: remove the 'middle' mode no-reply
2016-08-08 17:59 ` Marc-André Lureau
2016-08-09 14:50 ` 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=20160808141439.16908-12-marcandre.lureau@redhat.com \
--to=marcandre.lureau@redhat.com \
--cc=armbru@redhat.com \
--cc=eblake@redhat.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 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).