[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 1/1] monitor: improve tracing in handle_qmp_c
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH v2 1/1] monitor: improve tracing in handle_qmp_command |
Date: |
Fri, 28 Jul 2017 19:01:00 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) |
"Denis V. Lunev" <address@hidden> writes:
> Calculate req_json only if trace_handle_qmp_command enabled.
>
> Signed-off-by: Denis V. Lunev <address@hidden>
> CC: Stefan Hajnoczi <address@hidden>
> CC: LluĂs Vilanova <address@hidden>
> CC: Dr. David Alan Gilbert <address@hidden>
> CC: Markus Armbruster <address@hidden>
> ---
> Changes from v1:
> - written in the explicit for, as discussed in the mailing list
>
> monitor.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/monitor.c b/monitor.c
> index d8ac20f6ca..2bfeb9bbcc 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -3822,7 +3822,6 @@ static void handle_qmp_command(JSONMessageParser
> *parser, GQueue *tokens)
> QDict *qdict = NULL;
> Monitor *mon = cur_mon;
> Error *err = NULL;
> - QString *req_json;
>
> req = json_parser_parse_err(tokens, NULL, &err);
> if (!req && !err) {
> @@ -3840,9 +3839,11 @@ static void handle_qmp_command(JSONMessageParser
> *parser, GQueue *tokens)
> qdict_del(qdict, "id");
> } /* else will fail qmp_dispatch() */
>
> - req_json = qobject_to_json(req);
> - trace_handle_qmp_command(mon, qstring_get_str(req_json));
> - qobject_decref(QOBJECT(req_json));
> + if (trace_event_get_state(TRACE_HANDLE_QMP_COMMAND)) {
> + QString *req_json = qobject_to_json(req);
> + trace_handle_qmp_command(mon, qstring_get_str(req_json));
> + qobject_decref(QOBJECT(req_json));
> + }
>
> rsp = qmp_dispatch(cur_mon->qmp.commands, req);
Conflicts with Eric's commit 8a4613a, but I can resolve that in my tree.
The commit message is too terse. "Improve tracing" makes me think of
more informative traces, but that's not the case. What exactly is
improved here?