qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 02/13] qapi-commands: don't initialize command list


From: Marc-André Lureau
Subject: [Qemu-devel] [PATCH 02/13] qapi-commands: don't initialize command list in qmp_init_marshall()
Date: Sun, 16 Dec 2018 18:08:51 +0400

This will let the caller add several list of commands coming from
different schemas (the following patches split the schemas for common
and arch-specific parts).

Signed-off-by: Marc-André Lureau <address@hidden>
---
 scripts/qapi/commands.py     | 2 --
 monitor.c                    | 1 +
 qga/main.c                   | 1 +
 tests/test-qmp-cmds.c        | 1 +
 docs/devel/qapi-code-gen.txt | 2 --
 5 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/scripts/qapi/commands.py b/scripts/qapi/commands.py
index 0f3c991918..a9b2ecb304 100644
--- a/scripts/qapi/commands.py
+++ b/scripts/qapi/commands.py
@@ -222,8 +222,6 @@ def gen_registry(registry, prefix):
 
 void %(c_prefix)sqmp_init_marshal(QmpCommandList *cmds)
 {
-    QTAILQ_INIT(cmds);
-
 ''',
                 c_prefix=c_name(prefix, protect=False))
     ret += registry
diff --git a/monitor.c b/monitor.c
index 7848a3cb0d..30e8926002 100644
--- a/monitor.c
+++ b/monitor.c
@@ -1181,6 +1181,7 @@ static void monitor_init_qmp_commands(void)
      *   "qmp_capabilities", to enforce capability negotiation
      */
 
+    QTAILQ_INIT(&qmp_commands);
     qmp_init_marshal(&qmp_commands);
 
     qmp_register_command(&qmp_commands, "query-qmp-schema",
diff --git a/qga/main.c b/qga/main.c
index 87a0711c14..1d6c1024c9 100644
--- a/qga/main.c
+++ b/qga/main.c
@@ -1486,6 +1486,7 @@ int main(int argc, char **argv)
 
     config->log_level = G_LOG_LEVEL_ERROR | G_LOG_LEVEL_CRITICAL;
 
+    QTAILQ_INIT(&ga_commands);
     qga_qmp_init_marshal(&ga_commands);
 
     init_dfl_pathnames();
diff --git a/tests/test-qmp-cmds.c b/tests/test-qmp-cmds.c
index 481cb069ca..bbd52cfb69 100644
--- a/tests/test-qmp-cmds.c
+++ b/tests/test-qmp-cmds.c
@@ -325,6 +325,7 @@ int main(int argc, char **argv)
     g_test_add_func("/qmp/dealloc_types", test_dealloc_types);
     g_test_add_func("/qmp/dealloc_partial", test_dealloc_partial);
 
+    QTAILQ_INIT(&qmp_commands);
     test_qmp_init_marshal(&qmp_commands);
     g_test_run();
 
diff --git a/docs/devel/qapi-code-gen.txt b/docs/devel/qapi-code-gen.txt
index 43bd853e69..681177dec1 100644
--- a/docs/devel/qapi-code-gen.txt
+++ b/docs/devel/qapi-code-gen.txt
@@ -1334,8 +1334,6 @@ Example:
 
     void example_qmp_init_marshal(QmpCommandList *cmds)
     {
-        QTAILQ_INIT(cmds);
-
         qmp_register_command(cmds, "my-command",
                              qmp_marshal_my_command, QCO_NO_OPTIONS);
     }
-- 
2.20.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]