From nobody Mon Feb 9 17:36:29 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.zoho.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; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1499150921720785.027751281631; Mon, 3 Jul 2017 23:48:41 -0700 (PDT) Received: from localhost ([::1]:38898 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dSHdX-0007lK-D8 for importer@patchew.org; Tue, 04 Jul 2017 02:48:39 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41633) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dSHZ7-0003wT-Gs for qemu-devel@nongnu.org; Tue, 04 Jul 2017 02:44:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dSHZ5-0002zN-LO for qemu-devel@nongnu.org; Tue, 04 Jul 2017 02:44:05 -0400 Received: from mx1.redhat.com ([209.132.183.28]:60978) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dSHZ5-0002yl-CQ for qemu-devel@nongnu.org; Tue, 04 Jul 2017 02:44:03 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 520E67D0C3 for ; Tue, 4 Jul 2017 06:44:02 +0000 (UTC) Received: from lemon.redhat.com (ovpn-12-33.pek2.redhat.com [10.72.12.33]) by smtp.corp.redhat.com (Postfix) with ESMTP id 541465C469; Tue, 4 Jul 2017 06:44:00 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 520E67D0C3 Authentication-Results: ext-mx03.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx03.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=famz@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 520E67D0C3 From: Fam Zheng To: qemu-devel@nongnu.org Date: Tue, 4 Jul 2017 14:43:32 +0800 Message-Id: <20170704064347.7022-6-famz@redhat.com> In-Reply-To: <20170704064347.7022-1-famz@redhat.com> References: <20170704064347.7022-1-famz@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.27]); Tue, 04 Jul 2017 06:44:02 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v3 05/20] qdev: Add const qualifier to PropertyInfo definitions 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: Paolo Bonzini , Igor Mammedov Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" The remaining non-const ones are in e1000e which modifies description at runtime. They can be addressed separatedly. Signed-off-by: Fam Zheng --- hw/core/qdev-properties-system.c | 8 +++---- hw/core/qdev-properties.c | 44 +++++++++++++++++----------------- hw/s390x/css.c | 4 ++-- hw/s390x/s390-pci-bus.c | 2 +- include/hw/qdev-core.h | 4 ++-- include/hw/qdev-properties.h | 52 ++++++++++++++++++++----------------= ---- include/hw/s390x/css.h | 4 ++-- target/i386/cpu.c | 2 +- target/ppc/translate_init.c | 2 +- 9 files changed, 61 insertions(+), 61 deletions(-) diff --git a/hw/core/qdev-properties-system.c b/hw/core/qdev-properties-sys= tem.c index 3bef419..ec10da7 100644 --- a/hw/core/qdev-properties-system.c +++ b/hw/core/qdev-properties-system.c @@ -159,7 +159,7 @@ static void set_drive(Object *obj, Visitor *v, const ch= ar *name, void *opaque, set_pointer(obj, v, opaque, parse_drive, name, errp); } =20 -PropertyInfo qdev_prop_drive =3D { +const PropertyInfo qdev_prop_drive =3D { .name =3D "str", .description =3D "Node name or ID of a block device to use as a backen= d", .get =3D get_drive, @@ -228,7 +228,7 @@ static void release_chr(Object *obj, const char *name, = void *opaque) qemu_chr_fe_deinit(be, false); } =20 -PropertyInfo qdev_prop_chr =3D { +const PropertyInfo qdev_prop_chr =3D { .name =3D "str", .description =3D "ID of a chardev to use as a backend", .get =3D get_chr, @@ -313,7 +313,7 @@ out: g_free(str); } =20 -PropertyInfo qdev_prop_netdev =3D { +const PropertyInfo qdev_prop_netdev =3D { .name =3D "str", .description =3D "ID of a netdev to use as a backend", .get =3D get_netdev, @@ -393,7 +393,7 @@ static void set_vlan(Object *obj, Visitor *v, const cha= r *name, void *opaque, *ptr =3D hubport; } =20 -PropertyInfo qdev_prop_vlan =3D { +const PropertyInfo qdev_prop_vlan =3D { .name =3D "int32", .description =3D "Integer VLAN id to connect to", .print =3D print_vlan, diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c index 5429c63..f22bd71 100644 --- a/hw/core/qdev-properties.c +++ b/hw/core/qdev-properties.c @@ -132,7 +132,7 @@ static void set_default_value_bool(Object *obj, const P= roperty *prop) object_property_set_bool(obj, prop->defval.u, prop->name, &error_abort= ); } =20 -PropertyInfo qdev_prop_bit =3D { +const PropertyInfo qdev_prop_bit =3D { .name =3D "bool", .description =3D "on/off", .get =3D prop_get_bit, @@ -191,7 +191,7 @@ static void prop_set_bit64(Object *obj, Visitor *v, con= st char *name, bit64_prop_set(dev, prop, value); } =20 -PropertyInfo qdev_prop_bit64 =3D { +const PropertyInfo qdev_prop_bit64 =3D { .name =3D "bool", .description =3D "on/off", .get =3D prop_get_bit64, @@ -226,7 +226,7 @@ static void set_bool(Object *obj, Visitor *v, const cha= r *name, void *opaque, visit_type_bool(v, name, ptr, errp); } =20 -PropertyInfo qdev_prop_bool =3D { +const PropertyInfo qdev_prop_bool =3D { .name =3D "bool", .get =3D get_bool, .set =3D set_bool, @@ -270,7 +270,7 @@ static void set_default_value_uint(Object *obj, const P= roperty *prop) object_property_set_uint(obj, prop->defval.u, prop->name, &error_abort= ); } =20 -PropertyInfo qdev_prop_uint8 =3D { +const PropertyInfo qdev_prop_uint8 =3D { .name =3D "uint8", .get =3D get_uint8, .set =3D set_uint8, @@ -304,7 +304,7 @@ static void set_uint16(Object *obj, Visitor *v, const c= har *name, visit_type_uint16(v, name, ptr, errp); } =20 -PropertyInfo qdev_prop_uint16 =3D { +const PropertyInfo qdev_prop_uint16 =3D { .name =3D "uint16", .get =3D get_uint16, .set =3D set_uint16, @@ -363,14 +363,14 @@ static void set_int32(Object *obj, Visitor *v, const = char *name, void *opaque, visit_type_int32(v, name, ptr, errp); } =20 -PropertyInfo qdev_prop_uint32 =3D { +const PropertyInfo qdev_prop_uint32 =3D { .name =3D "uint32", .get =3D get_uint32, .set =3D set_uint32, .set_default_value =3D set_default_value_uint, }; =20 -PropertyInfo qdev_prop_int32 =3D { +const PropertyInfo qdev_prop_int32 =3D { .name =3D "int32", .get =3D get_int32, .set =3D set_int32, @@ -404,7 +404,7 @@ static void set_uint64(Object *obj, Visitor *v, const c= har *name, visit_type_uint64(v, name, ptr, errp); } =20 -PropertyInfo qdev_prop_uint64 =3D { +const PropertyInfo qdev_prop_uint64 =3D { .name =3D "uint64", .get =3D get_uint64, .set =3D set_uint64, @@ -457,7 +457,7 @@ static void set_string(Object *obj, Visitor *v, const c= har *name, *ptr =3D str; } =20 -PropertyInfo qdev_prop_string =3D { +const PropertyInfo qdev_prop_string =3D { .name =3D "str", .release =3D release_string, .get =3D get_string, @@ -467,7 +467,7 @@ PropertyInfo qdev_prop_string =3D { /* --- pointer --- */ =20 /* Not a proper property, just for dirty hacks. TODO Remove it! */ -PropertyInfo qdev_prop_ptr =3D { +const PropertyInfo qdev_prop_ptr =3D { .name =3D "ptr", }; =20 @@ -541,7 +541,7 @@ inval: g_free(str); } =20 -PropertyInfo qdev_prop_macaddr =3D { +const PropertyInfo qdev_prop_macaddr =3D { .name =3D "str", .description =3D "Ethernet 6-byte MAC Address, example: 52:54:00:12:34= :56", .get =3D get_mac, @@ -550,7 +550,7 @@ PropertyInfo qdev_prop_macaddr =3D { =20 /* --- on/off/auto --- */ =20 -PropertyInfo qdev_prop_on_off_auto =3D { +const PropertyInfo qdev_prop_on_off_auto =3D { .name =3D "OnOffAuto", .description =3D "on/off/auto", .enum_table =3D OnOffAuto_lookup, @@ -563,7 +563,7 @@ PropertyInfo qdev_prop_on_off_auto =3D { =20 QEMU_BUILD_BUG_ON(sizeof(LostTickPolicy) !=3D sizeof(int)); =20 -PropertyInfo qdev_prop_losttickpolicy =3D { +const PropertyInfo qdev_prop_losttickpolicy =3D { .name =3D "LostTickPolicy", .enum_table =3D LostTickPolicy_lookup, .get =3D get_enum, @@ -575,7 +575,7 @@ PropertyInfo qdev_prop_losttickpolicy =3D { =20 QEMU_BUILD_BUG_ON(sizeof(BlockdevOnError) !=3D sizeof(int)); =20 -PropertyInfo qdev_prop_blockdev_on_error =3D { +const PropertyInfo qdev_prop_blockdev_on_error =3D { .name =3D "BlockdevOnError", .description =3D "Error handling policy, " "report/ignore/enospc/stop/auto", @@ -589,7 +589,7 @@ PropertyInfo qdev_prop_blockdev_on_error =3D { =20 QEMU_BUILD_BUG_ON(sizeof(BiosAtaTranslation) !=3D sizeof(int)); =20 -PropertyInfo qdev_prop_bios_chs_trans =3D { +const PropertyInfo qdev_prop_bios_chs_trans =3D { .name =3D "BiosAtaTranslation", .description =3D "Logical CHS translation algorithm, " "auto/none/lba/large/rechs", @@ -601,7 +601,7 @@ PropertyInfo qdev_prop_bios_chs_trans =3D { =20 /* --- FDC default drive types */ =20 -PropertyInfo qdev_prop_fdc_drive_type =3D { +const PropertyInfo qdev_prop_fdc_drive_type =3D { .name =3D "FdcDriveType", .description =3D "FDC drive type, " "144/288/120/none/auto", @@ -677,7 +677,7 @@ static int print_pci_devfn(DeviceState *dev, Property *= prop, char *dest, } } =20 -PropertyInfo qdev_prop_pci_devfn =3D { +const PropertyInfo qdev_prop_pci_devfn =3D { .name =3D "int32", .description =3D "Slot and optional function number, example: 06.0 or = 06", .print =3D print_pci_devfn, @@ -726,7 +726,7 @@ static void set_blocksize(Object *obj, Visitor *v, cons= t char *name, *ptr =3D value; } =20 -PropertyInfo qdev_prop_blocksize =3D { +const PropertyInfo qdev_prop_blocksize =3D { .name =3D "uint16", .description =3D "A power of two between 512 and 32768", .get =3D get_uint16, @@ -841,7 +841,7 @@ inval: g_free(str); } =20 -PropertyInfo qdev_prop_pci_host_devaddr =3D { +const PropertyInfo qdev_prop_pci_host_devaddr =3D { .name =3D "str", .description =3D "Address (bus/device/function) of " "the host device, example: 04:10.0", @@ -950,7 +950,7 @@ static void set_prop_arraylen(Object *obj, Visitor *v, = const char *name, } } =20 -PropertyInfo qdev_prop_arraylen =3D { +const PropertyInfo qdev_prop_arraylen =3D { .name =3D "uint32", .get =3D get_uint32, .set =3D set_prop_arraylen, @@ -1208,7 +1208,7 @@ static void set_size(Object *obj, Visitor *v, const c= har *name, void *opaque, visit_type_size(v, name, ptr, errp); } =20 -PropertyInfo qdev_prop_size =3D { +const PropertyInfo qdev_prop_size =3D { .name =3D "size", .get =3D get_size, .set =3D set_size, @@ -1228,7 +1228,7 @@ static void create_link_property(Object *obj, Propert= y *prop, Error **errp) errp); } =20 -PropertyInfo qdev_prop_link =3D { +const PropertyInfo qdev_prop_link =3D { .name =3D "link", .create =3D create_link_property, }; diff --git a/hw/s390x/css.c b/hw/s390x/css.c index 599805d..1742d9b 100644 --- a/hw/s390x/css.c +++ b/hw/s390x/css.c @@ -2029,7 +2029,7 @@ out: g_free(str); } =20 -PropertyInfo css_devid_propinfo =3D { +const PropertyInfo css_devid_propinfo =3D { .name =3D "str", .description =3D "Identifier of an I/O device in the channel " "subsystem, example: fe.1.23ab", @@ -2037,7 +2037,7 @@ PropertyInfo css_devid_propinfo =3D { .set =3D set_css_devid, }; =20 -PropertyInfo css_devid_ro_propinfo =3D { +const PropertyInfo css_devid_ro_propinfo =3D { .name =3D "str", .description =3D "Read-only identifier of an I/O device in the channel= " "subsystem, example: fe.1.23ab", diff --git a/hw/s390x/s390-pci-bus.c b/hw/s390x/s390-pci-bus.c index 5651483..061e0c6 100644 --- a/hw/s390x/s390-pci-bus.c +++ b/hw/s390x/s390-pci-bus.c @@ -1018,7 +1018,7 @@ static void s390_pci_set_fid(Object *obj, Visitor *v,= const char *name, zpci->fid_defined =3D true; } =20 -static PropertyInfo s390_pci_fid_propinfo =3D { +static const PropertyInfo s390_pci_fid_propinfo =3D { .name =3D "zpci_fid", .get =3D s390_pci_get_fid, .set =3D s390_pci_set_fid, diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h index 08d1d2c..5348815 100644 --- a/include/hw/qdev-core.h +++ b/include/hw/qdev-core.h @@ -223,7 +223,7 @@ struct BusState { =20 struct Property { const char *name; - PropertyInfo *info; + const PropertyInfo *info; ptrdiff_t offset; uint8_t bitnr; union { @@ -231,7 +231,7 @@ struct Property { uint64_t u; } defval; int arrayoffset; - PropertyInfo *arrayinfo; + const PropertyInfo *arrayinfo; int arrayfieldsize; const char *link_type; }; diff --git a/include/hw/qdev-properties.h b/include/hw/qdev-properties.h index b150378..71b33b2 100644 --- a/include/hw/qdev-properties.h +++ b/include/hw/qdev-properties.h @@ -5,32 +5,32 @@ =20 /*** qdev-properties.c ***/ =20 -extern PropertyInfo qdev_prop_bit; -extern PropertyInfo qdev_prop_bit64; -extern PropertyInfo qdev_prop_bool; -extern PropertyInfo qdev_prop_uint8; -extern PropertyInfo qdev_prop_uint16; -extern PropertyInfo qdev_prop_uint32; -extern PropertyInfo qdev_prop_int32; -extern PropertyInfo qdev_prop_uint64; -extern PropertyInfo qdev_prop_size; -extern PropertyInfo qdev_prop_string; -extern PropertyInfo qdev_prop_chr; -extern PropertyInfo qdev_prop_ptr; -extern PropertyInfo qdev_prop_macaddr; -extern PropertyInfo qdev_prop_on_off_auto; -extern PropertyInfo qdev_prop_losttickpolicy; -extern PropertyInfo qdev_prop_blockdev_on_error; -extern PropertyInfo qdev_prop_bios_chs_trans; -extern PropertyInfo qdev_prop_fdc_drive_type; -extern PropertyInfo qdev_prop_drive; -extern PropertyInfo qdev_prop_netdev; -extern PropertyInfo qdev_prop_vlan; -extern PropertyInfo qdev_prop_pci_devfn; -extern PropertyInfo qdev_prop_blocksize; -extern PropertyInfo qdev_prop_pci_host_devaddr; -extern PropertyInfo qdev_prop_arraylen; -extern PropertyInfo qdev_prop_link; +extern const PropertyInfo qdev_prop_bit; +extern const PropertyInfo qdev_prop_bit64; +extern const PropertyInfo qdev_prop_bool; +extern const PropertyInfo qdev_prop_uint8; +extern const PropertyInfo qdev_prop_uint16; +extern const PropertyInfo qdev_prop_uint32; +extern const PropertyInfo qdev_prop_int32; +extern const PropertyInfo qdev_prop_uint64; +extern const PropertyInfo qdev_prop_size; +extern const PropertyInfo qdev_prop_string; +extern const PropertyInfo qdev_prop_chr; +extern const PropertyInfo qdev_prop_ptr; +extern const PropertyInfo qdev_prop_macaddr; +extern const PropertyInfo qdev_prop_on_off_auto; +extern const PropertyInfo qdev_prop_losttickpolicy; +extern const PropertyInfo qdev_prop_blockdev_on_error; +extern const PropertyInfo qdev_prop_bios_chs_trans; +extern const PropertyInfo qdev_prop_fdc_drive_type; +extern const PropertyInfo qdev_prop_drive; +extern const PropertyInfo qdev_prop_netdev; +extern const PropertyInfo qdev_prop_vlan; +extern const PropertyInfo qdev_prop_pci_devfn; +extern const PropertyInfo qdev_prop_blocksize; +extern const PropertyInfo qdev_prop_pci_host_devaddr; +extern const PropertyInfo qdev_prop_arraylen; +extern const PropertyInfo qdev_prop_link; =20 #define DEFINE_PROP(_name, _state, _field, _prop, _type) { \ .name =3D (_name), \ diff --git a/include/hw/s390x/css.h b/include/hw/s390x/css.h index 596a2f2..8fdc2e1 100644 --- a/include/hw/s390x/css.h +++ b/include/hw/s390x/css.h @@ -109,7 +109,7 @@ typedef struct CssDevId { bool valid; } CssDevId; =20 -extern PropertyInfo css_devid_propinfo; +extern const PropertyInfo css_devid_propinfo; =20 #define DEFINE_PROP_CSS_DEV_ID(_n, _s, _f) \ DEFINE_PROP(_n, _s, _f, css_devid_propinfo, CssDevId) @@ -190,7 +190,7 @@ int css_do_rchp(uint8_t cssid, uint8_t chpid); bool css_present(uint8_t cssid); #endif =20 -extern PropertyInfo css_devid_ro_propinfo; +extern const PropertyInfo css_devid_ro_propinfo; =20 #define DEFINE_PROP_CSS_DEV_ID_RO(_n, _s, _f) \ DEFINE_PROP(_n, _s, _f, css_devid_ro_propinfo, CssDevId) diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 642519a..fce277b 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -1961,7 +1961,7 @@ static void x86_set_hv_spinlocks(Object *obj, Visitor= *v, const char *name, cpu->hyperv_spinlock_attempts =3D value; } =20 -static PropertyInfo qdev_prop_spinlocks =3D { +static const PropertyInfo qdev_prop_spinlocks =3D { .name =3D "int", .get =3D x86_get_hv_spinlocks, .set =3D x86_set_hv_spinlocks, diff --git a/target/ppc/translate_init.c b/target/ppc/translate_init.c index 783bf98..ae25faf 100644 --- a/target/ppc/translate_init.c +++ b/target/ppc/translate_init.c @@ -8435,7 +8435,7 @@ static void getset_compat_deprecated(Object *obj, Vis= itor *v, const char *name, visit_type_null(v, name, NULL); } =20 -static PropertyInfo ppc_compat_deprecated_propinfo =3D { +static const PropertyInfo ppc_compat_deprecated_propinfo =3D { .name =3D "str", .description =3D "compatibility mode (deprecated)", .get =3D getset_compat_deprecated, --=20 2.9.4