qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] monitor: trace qmp_send_response
@ 2021-02-04 22:24 Vladimir Sementsov-Ogievskiy
  2021-02-05  7:56 ` Markus Armbruster
  0 siblings, 1 reply; 4+ messages in thread
From: Vladimir Sementsov-Ogievskiy @ 2021-02-04 22:24 UTC (permalink / raw)
  To: qemu-devel; +Cc: armbru, vsementsov

Add a useful counterpart for trace_handle_qmp_command for debugging
libvirt guests.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
---
 monitor/qmp.c        | 6 ++++++
 monitor/trace-events | 1 +
 2 files changed, 7 insertions(+)

diff --git a/monitor/qmp.c b/monitor/qmp.c
index 8f91af32be..772b9e7b30 100644
--- a/monitor/qmp.c
+++ b/monitor/qmp.c
@@ -111,6 +111,12 @@ void qmp_send_response(MonitorQMP *mon, const QDict *rsp)
     const QObject *data = QOBJECT(rsp);
     GString *json;
 
+    if (trace_event_get_state_backends(TRACE_QMP_SEND_RESPONSE)) {
+        json = qobject_to_json(data);
+        trace_qmp_send_response(mon, json->str);
+        g_string_free(json, true);
+    }
+
     json = qobject_to_json_pretty(data, mon->pretty);
     assert(json != NULL);
 
diff --git a/monitor/trace-events b/monitor/trace-events
index 0365ac4d99..12f0576c7b 100644
--- a/monitor/trace-events
+++ b/monitor/trace-events
@@ -13,3 +13,4 @@ monitor_suspend(void *ptr, int cnt) "mon %p: %d"
 monitor_qmp_cmd_in_band(const char *id) "%s"
 monitor_qmp_cmd_out_of_band(const char *id) "%s"
 handle_qmp_command(void *mon, const char *req) "mon %p req: %s"
+qmp_send_response(void *mon, const char *req) "mon %p req: %s"
-- 
2.29.2



^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-02-05 13:48 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-02-04 22:24 [PATCH] monitor: trace qmp_send_response Vladimir Sementsov-Ogievskiy
2021-02-05  7:56 ` Markus Armbruster
2021-02-05  8:17   ` Vladimir Sementsov-Ogievskiy
2021-02-05 13:46     ` Markus Armbruster

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).