From nobody Mon Feb 9 03:29:22 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1531750022508678.010129804688; Mon, 16 Jul 2018 07:07:02 -0700 (PDT) Received: from localhost ([::1]:51926 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ff49V-0002k4-EI for importer@patchew.org; Mon, 16 Jul 2018 10:07:01 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33986) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ff47r-0001pm-KT for qemu-devel@nongnu.org; Mon, 16 Jul 2018 10:05:23 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ff47p-0007wd-Mo for qemu-devel@nongnu.org; Mon, 16 Jul 2018 10:05:19 -0400 Received: from mx3-rdu2.redhat.com ([66.187.233.73]:35972 helo=mx1.redhat.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1ff47p-0007wW-Gq for qemu-devel@nongnu.org; Mon, 16 Jul 2018 10:05:17 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 23106402347E for ; Mon, 16 Jul 2018 14:05:17 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-116-125.ams2.redhat.com [10.36.116.125]) by smtp.corp.redhat.com (Postfix) with ESMTPS id EF8132156893 for ; Mon, 16 Jul 2018 14:05:16 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 8F21F1132D6C; Mon, 16 Jul 2018 16:05:14 +0200 (CEST) From: Markus Armbruster To: qemu-devel@nongnu.org Date: Mon, 16 Jul 2018 16:05:14 +0200 Message-Id: <20180716140514.1490-6-armbru@redhat.com> In-Reply-To: <20180716140514.1490-1-armbru@redhat.com> References: <20180716140514.1490-1-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.78 on 10.11.54.6 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.6]); Mon, 16 Jul 2018 14:05:17 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.6]); Mon, 16 Jul 2018 14:05:17 +0000 (UTC) for IP:'10.11.54.6' DOMAIN:'int-mx06.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'armbru@redhat.com' RCPT:'' Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 66.187.233.73 Subject: [Qemu-devel] [PULL 5/5] monitor: Fix tracepoint crash on JSON syntax error X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" 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 Message-Id: <20180716091012.29510-1-armbru@redhat.com> Reviewed-by: Marc-Andr=C3=A9 Lureau Reviewed-by: Peter Xu --- 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 *par= ser, GQueue *tokens) qdict_del(qdict, "id"); } /* else will fail qmp_dispatch() */ =20 - if (trace_event_get_state_backends(TRACE_HANDLE_QMP_COMMAND)) { + if (req && trace_event_get_state_backends(TRACE_HANDLE_QMP_COMMAND)) { QString *req_json =3D qobject_to_json(req); trace_handle_qmp_command(mon, qstring_get_str(req_json)); qobject_unref(req_json); --=20 2.17.1