From nobody Tue Apr 16 21:19:04 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; 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=nokia.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1523623754109559.6011394881981; Fri, 13 Apr 2018 05:49:14 -0700 (PDT) Received: from localhost ([::1]:51014 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f6y8f-0004rV-AB for importer@patchew.org; Fri, 13 Apr 2018 08:49:13 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39782) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f6tiB-00054y-FA for qemu-devel@nongnu.org; Fri, 13 Apr 2018 04:05:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f6ti7-00012s-AF for qemu-devel@nongnu.org; Fri, 13 Apr 2018 04:05:35 -0400 Received: from mail-db5eur01on0110.outbound.protection.outlook.com ([104.47.2.110]:64416 helo=EUR01-DB5-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1f6ti6-0000vf-KX for qemu-devel@nongnu.org; Fri, 13 Apr 2018 04:05:31 -0400 Received: from AM3PR07MB273.eurprd07.prod.outlook.com (10.242.18.140) by AM3PR07MB1202.eurprd07.prod.outlook.com (10.163.188.28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.696.5; Fri, 13 Apr 2018 08:05:27 +0000 Received: from AM3PR07MB273.eurprd07.prod.outlook.com ([fe80::7591:dbad:a913:a4f4]) by AM3PR07MB273.eurprd07.prod.outlook.com ([fe80::7591:dbad:a913:a4f4%7]) with mapi id 15.20.0696.006; Fri, 13 Apr 2018 08:05:27 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=4hhzIb5gsSogUxxNGXg89tYP7j6M1LC3bEEXIzkLFfQ=; b=MNTJHqK4XXjcqtyNsxKvDoBtHXOnEP65D7ij4bZmIgdGF97g1P6c+BHn51jGjvjnTjqn+7381v9HiQ32NbjrhSQ1UG23cCziHLIfGiFjyKzO3A/meZ29Z87yck+aQxbBaCG0B8Ic9djLKvybe9BpEt5X4IIpGvRcZHpcvn4+56E= From: "Perez Blanco, Ricardo (Nokia - BE/Antwerp)" To: "qemu-devel@nongnu.org" Thread-Topic: [PATCH] Show values and description when using "qom-list" Thread-Index: AdPRqksMHAVcnt5oSpC4dQgSZYcIDg== Date: Fri, 13 Apr 2018 08:05:26 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [135.245.212.198] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; AM3PR07MB1202; 7:pWG9818EX/RBxIzNqfMWzXmqcR0j9ASo7Ut3zSQdSTBvypXS3iG0meFu1YEJxkbvN7204w2T+TBsYCpOtMX5F3ISepsRT/wIIF5ugvV8tNns2gmGxTCdC2LZjppkj1XO8epyY9ZdGfrKYgeZtw7lwRWnITffeigu4eyO9BTAswFQyexPVfF+dRHJnkeEnGKexXLbeSsEQ3cIGQQ+aVRPoLGoXkyMpffOTwJj9RV6D40myfxLPAFBR1IJfsp4AKu4 x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(48565401081)(2017052603328)(7193020); SRVR:AM3PR07MB1202; x-ms-traffictypediagnostic: AM3PR07MB1202: authentication-results: spf=none (sender IP is ) smtp.mailfrom=ricardo.perez_blanco@nokia.com; x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(82608151540597); x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(6040522)(2401047)(8121501046)(5005006)(3231232)(11241501184)(806099)(944501343)(52105095)(93006095)(93001095)(10201501046)(3002001)(6055026)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(20161123560045)(20161123562045)(6072148)(201708071742011); SRVR:AM3PR07MB1202; BCL:0; PCL:0; RULEID:; SRVR:AM3PR07MB1202; x-forefront-prvs: 0641678E68 x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(376002)(366004)(396003)(39860400002)(346002)(39380400002)(50944005)(199004)(189003)(6916009)(55016002)(2906002)(25786009)(5640700003)(54906003)(316002)(5660300001)(33656002)(53936002)(74316002)(66066001)(99286004)(486006)(7696005)(1857600001)(14454004)(6436002)(4326008)(9686003)(3660700001)(305945005)(3280700002)(3846002)(476003)(7736002)(86362001)(6506007)(53546011)(413944005)(478600001)(6116002)(97736004)(2501003)(102836004)(575784001)(8936002)(26005)(81156014)(81166006)(186003)(106356001)(68736007)(2351001)(2900100001)(5250100002)(105586002)(8676002); DIR:OUT; SFP:1102; SCL:1; SRVR:AM3PR07MB1202; H:AM3PR07MB273.eurprd07.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; 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; received-spf: None (protection.outlook.com: nokia.com does not designate permitted sender hosts) spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: 929612b7-defe-41c5-aebd-08d5a1155132 X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 929612b7-defe-41c5-aebd-08d5a1155132 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Apr 2018 08:05:27.0516 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM3PR07MB1202 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 104.47.2.110 X-Mailman-Approved-At: Fri, 13 Apr 2018 08:46:56 -0400 Subject: [Qemu-devel] [PATCH] Show values and description when using "qom-list" 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: , Cc: "dgilbert@redhat.com" , "armbru@redhat.com" Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" Dear all, Here you can find my first contribution to qemu. Please, do not hesitate to= do any kind of remark. Based on ac4ba87ae0738d7a77708f8ce31ae2378ab99654 Kind regards, Ricardo Perez Blanco From 65df20cef2846d764a8a821574f5f3643391aac5 Mon Sep 17 00:00:00 2001 From: Ricardo Perez Blanco Date: Wed, 11 Apr 2018 12:09:11 +0200 Subject: [PATCH] Show values and description when using "qom-list" For debugging purposes it is very useful to: - See the description of the field. This information is already filled in but not shown in "qom-list" command. - Display value of the field. So far, only well known types are implemented (string, str, int, uint, bool). Signed-off-by: Ricardo Perez Blanco --- hmp.c | 13 +++++++++++-- qapi/misc.json | 4 +++- qmp.c | 26 ++++++++++++++++++++++++++ 3 files changed, 40 insertions(+), 3 deletions(-) diff --git a/hmp.c b/hmp.c index a25c7bd..967e0b2 100644 --- a/hmp.c +++ b/hmp.c @@ -2490,8 +2490,17 @@ void hmp_qom_list(Monitor *mon, const QDict *qdict) while (list !=3D NULL) { ObjectPropertyInfo *value =3D list->value; - monitor_printf(mon, "%s (%s)\n", - value->name, value->type); + monitor_printf(mon, "%s", value->name); + if (value->value) { + monitor_printf(mon, "=3D%s", value->value); + } + monitor_printf(mon, " (%s)", value->type); + if (value->description) { + monitor_printf(mon, "\r\t\t\t\t\t\t\t\t\t[Description: %s]= ", + value->description); + } + monitor_printf(mon, "\n"); + list =3D list->next; } qapi_free_ObjectPropertyInfoList(start); diff --git a/qapi/misc.json b/qapi/misc.json index 5636f4a..6b3b4de 100644 --- a/qapi/misc.json +++ b/qapi/misc.json @@ -1328,10 +1328,12 @@ # # @description: if specified, the description of the property. # +# @value: if specified, the value of the property. +# # Since: 1.2 ## { 'struct': 'ObjectPropertyInfo', - 'data': { 'name': 'str', 'type': 'str', '*description': 'str' } } + 'data': { 'name': 'str', 'type': 'str', '*description':'str', '*value':'= str' } } ## # @qom-list: diff --git a/qmp.c b/qmp.c index f722616..750b5d0 100644 --- a/qmp.c +++ b/qmp.c @@ -237,6 +237,32 @@ ObjectPropertyInfoList *qmp_qom_list(const char *path,= Error **errp) entry->value->name =3D g_strdup(prop->name); entry->value->type =3D g_strdup(prop->type); + if (prop->description) { + entry->value->description =3D g_strdup(prop->description); + } + if ((g_ascii_strncasecmp(entry->value->type, "string", 6) =3D=3D 0= ) || + (g_ascii_strncasecmp(entry->value->type, "str", 3) =3D=3D 0)) { + Error **errp =3D NULL; + entry->value->value =3D g_strdup_printf("\"%s\"", + object_property_get_str(obj, entry->value->name, errp)); + } + if (g_ascii_strncasecmp(entry->value->type, "int", 3) =3D=3D 0) { + Error **errp =3D NULL; + entry->value->value =3D g_strdup_printf("%ld", + object_property_get_int(obj, entry->value->name, errp)); + } + if (g_ascii_strncasecmp(entry->value->type, "uint", 4) =3D=3D 0) { + Error **errp =3D NULL; + entry->value->value =3D g_strdup_printf("%lu", + object_property_get_uint(obj, entry->value->name, errp)); + } + if (g_ascii_strncasecmp(entry->value->type, "bool", 4) =3D=3D 0) { + Error **errp =3D NULL; + entry->value->value =3D g_strdup_printf("%s", + (object_property_get_bool(obj, entry->value->name, errp) = =3D=3D true) + ? "true" : "false"); + } + } return props; -- 1.8.3.1