* [Qemu-devel] [PATCH] monitor: Fix tracepoint crash on JSON syntax error
@ 2018-07-16 9:10 Markus Armbruster
2018-07-16 9:13 ` Marc-André Lureau
2018-07-16 9:31 ` Peter Xu
0 siblings, 2 replies; 3+ messages in thread
From: Markus Armbruster @ 2018-07-16 9:10 UTC (permalink / raw)
To: qemu-devel; +Cc: dgilbert, eblake, peterx
When tracepoint handle_qmp_command is enabled, we crash on JSON syntax
errors. Broken in commit 1cc37471525. Fix by skipping the tracepoint
on JSON syntax error. Before the flawed commit, we skipped it by
returning early.
Fixes: CID 1394216
Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
monitor.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/monitor.c b/monitor.c
index 7af1f18d13..be29634a00 100644
--- a/monitor.c
+++ b/monitor.c
@@ -4224,7 +4224,7 @@ static void handle_qmp_command(JSONMessageParser *parser, GQueue *tokens)
qdict_del(qdict, "id");
} /* else will fail qmp_dispatch() */
- if (trace_event_get_state_backends(TRACE_HANDLE_QMP_COMMAND)) {
+ if (req && trace_event_get_state_backends(TRACE_HANDLE_QMP_COMMAND)) {
QString *req_json = qobject_to_json(req);
trace_handle_qmp_command(mon, qstring_get_str(req_json));
qobject_unref(req_json);
--
2.17.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] [PATCH] monitor: Fix tracepoint crash on JSON syntax error
2018-07-16 9:10 [Qemu-devel] [PATCH] monitor: Fix tracepoint crash on JSON syntax error Markus Armbruster
@ 2018-07-16 9:13 ` Marc-André Lureau
2018-07-16 9:31 ` Peter Xu
1 sibling, 0 replies; 3+ messages in thread
From: Marc-André Lureau @ 2018-07-16 9:13 UTC (permalink / raw)
To: Markus Armbruster; +Cc: QEMU, Dr. David Alan Gilbert, Peter Xu
On Mon, Jul 16, 2018 at 11:10 AM, Markus Armbruster <armbru@redhat.com> wrote:
> When tracepoint handle_qmp_command is enabled, we crash on JSON syntax
> errors. Broken in commit 1cc37471525. Fix by skipping the tracepoint
> on JSON syntax error. Before the flawed commit, we skipped it by
> returning early.
>
> Fixes: CID 1394216
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> ---
> monitor.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/monitor.c b/monitor.c
> index 7af1f18d13..be29634a00 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -4224,7 +4224,7 @@ static void handle_qmp_command(JSONMessageParser *parser, GQueue *tokens)
> qdict_del(qdict, "id");
> } /* else will fail qmp_dispatch() */
>
> - if (trace_event_get_state_backends(TRACE_HANDLE_QMP_COMMAND)) {
> + if (req && trace_event_get_state_backends(TRACE_HANDLE_QMP_COMMAND)) {
> QString *req_json = qobject_to_json(req);
> trace_handle_qmp_command(mon, qstring_get_str(req_json));
> qobject_unref(req_json);
> --
> 2.17.1
>
>
--
Marc-André Lureau
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] [PATCH] monitor: Fix tracepoint crash on JSON syntax error
2018-07-16 9:10 [Qemu-devel] [PATCH] monitor: Fix tracepoint crash on JSON syntax error Markus Armbruster
2018-07-16 9:13 ` Marc-André Lureau
@ 2018-07-16 9:31 ` Peter Xu
1 sibling, 0 replies; 3+ messages in thread
From: Peter Xu @ 2018-07-16 9:31 UTC (permalink / raw)
To: Markus Armbruster; +Cc: qemu-devel, dgilbert, eblake
On Mon, Jul 16, 2018 at 11:10:12AM +0200, Markus Armbruster wrote:
> When tracepoint handle_qmp_command is enabled, we crash on JSON syntax
> errors. Broken in commit 1cc37471525. Fix by skipping the tracepoint
> on JSON syntax error. Before the flawed commit, we skipped it by
> returning early.
>
> Fixes: CID 1394216
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
--
Peter Xu
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-07-16 9:31 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-16 9:10 [Qemu-devel] [PATCH] monitor: Fix tracepoint crash on JSON syntax error Markus Armbruster
2018-07-16 9:13 ` Marc-André Lureau
2018-07-16 9:31 ` Peter Xu
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).