From nobody Sun Nov 16 23:04:00 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602271058; cv=none; d=zohomail.com; s=zohoarc; b=cmHNc72xla5TIt5gaZI5exKFExt3B554gtDlYBHrW8asBPXGsfgx6Kh38LgkJ+F57n8n9AU3hMAfv0I78369fvIJOcYgMUOdIkINE9L5i0f5VKrc4UN9RyKR0zADYQUr34jvjzj4WILyzHgUrRF9e6wuSC1G/+0NZdCqA+GBFnA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602271058; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=u1ignAfKpKJCiV6u91zNVKq8+uBU6mixfWejHGHxevs=; b=OzDUtdO3bOihfuHYPaeO4LUVigQ8WVlSeeSmDnwy6vlg0NVEI5fIj4v02P7Ifvq+mpAfdx6pEshXqcHyIi5vyPbvRPnorlV3ba+ya+T34+uCGhGQdP9EWZvb4EIQDLLqS4IMVOdG1sMpukUXNhyMffg8enwoo4qEEvEBIbJ9zvw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 16022710583781000.4950314023956; Fri, 9 Oct 2020 12:17:38 -0700 (PDT) Received: from localhost ([::1]:56428 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kQxtY-0001gH-Ac for importer@patchew.org; Fri, 09 Oct 2020 15:17:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44196) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kQxri-0000Mc-Nf for qemu-devel@nongnu.org; Fri, 09 Oct 2020 15:15:42 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:27362) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kQxrh-0000PC-4t for qemu-devel@nongnu.org; Fri, 09 Oct 2020 15:15:42 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-368-2F4pFr1XODeEkK-zld0x1A-1; Fri, 09 Oct 2020 15:15:35 -0400 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 6CF5318A8230; Fri, 9 Oct 2020 19:15:34 +0000 (UTC) Received: from localhost (ovpn-119-102.rdu2.redhat.com [10.10.119.102]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9B7D360BFA; Fri, 9 Oct 2020 19:15:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602270939; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=u1ignAfKpKJCiV6u91zNVKq8+uBU6mixfWejHGHxevs=; b=BWdmkOxRHUjjiltuuzNxmvM3iQmZvWoyn+oiSgGd7p4uNaSYViF0ApOxLC/hM5Lt7ZJNdF 40KOqz1vJGlcRjazU35xSWVIOG7KNB7/VEEq1olDEtVV+sUSlqF3TwrPToqx+WI3AfCjgh sFsdk81Cs/QG9tXCxHg+Y2LC7e14VT4= X-MC-Unique: 2F4pFr1XODeEkK-zld0x1A-1 From: Eduardo Habkost To: qemu-devel@nongnu.org Subject: [PATCH 1/3] acpi: Don't pass const pointers to object_property_add_uint*_ptr() Date: Fri, 9 Oct 2020 15:15:18 -0400 Message-Id: <20201009191520.1799419-2-ehabkost@redhat.com> In-Reply-To: <20201009191520.1799419-1-ehabkost@redhat.com> References: <20201009191520.1799419-1-ehabkost@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=ehabkost@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=ehabkost@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/09 02:34:40 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Igor Mammedov , "Michael S. Tsirkin" , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Markus Armbruster , Aleksandar Markovic , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Paolo Bonzini , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" object_property_add_uint*_ptr() will be changed to get non-const pointers. Adapt the ACPI code to that. Signed-off-by: Eduardo Habkost --- hw/acpi/ich9.c | 2 +- hw/acpi/piix4.c | 10 +++++----- hw/isa/lpc_ich9.c | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/hw/acpi/ich9.c b/hw/acpi/ich9.c index 95cb0f935b..9bb8d1b155 100644 --- a/hw/acpi/ich9.c +++ b/hw/acpi/ich9.c @@ -371,7 +371,7 @@ static void ich9_pm_set_enable_tco(Object *obj, bool va= lue, Error **errp) =20 void ich9_pm_add_properties(Object *obj, ICH9LPCPMRegs *pm) { - static const uint32_t gpe0_len =3D ICH9_PMIO_GPE0_LEN; + static uint32_t gpe0_len =3D ICH9_PMIO_GPE0_LEN; pm->acpi_memory_hotplug.is_enabled =3D true; pm->cpu_hotplug_legacy =3D true; pm->disable_s3 =3D 0; diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c index 894d357f8c..1e8a15676d 100644 --- a/hw/acpi/piix4.c +++ b/hw/acpi/piix4.c @@ -439,11 +439,11 @@ static void piix4_pm_machine_ready(Notifier *n, void = *opaque) =20 static void piix4_pm_add_propeties(PIIX4PMState *s) { - static const uint8_t acpi_enable_cmd =3D ACPI_ENABLE; - static const uint8_t acpi_disable_cmd =3D ACPI_DISABLE; - static const uint32_t gpe0_blk =3D GPE_BASE; - static const uint32_t gpe0_blk_len =3D GPE_LEN; - static const uint16_t sci_int =3D 9; + static uint8_t acpi_enable_cmd =3D ACPI_ENABLE; + static uint8_t acpi_disable_cmd =3D ACPI_DISABLE; + static uint32_t gpe0_blk =3D GPE_BASE; + static uint32_t gpe0_blk_len =3D GPE_LEN; + static uint16_t sci_int =3D 9; =20 object_property_add_uint8_ptr(OBJECT(s), ACPI_PM_PROP_ACPI_ENABLE_CMD, &acpi_enable_cmd, OBJ_PROP_FLAG_READ); diff --git a/hw/isa/lpc_ich9.c b/hw/isa/lpc_ich9.c index 04e5323140..b9dc01f654 100644 --- a/hw/isa/lpc_ich9.c +++ b/hw/isa/lpc_ich9.c @@ -638,8 +638,8 @@ static void ich9_lpc_initfn(Object *obj) { ICH9LPCState *lpc =3D ICH9_LPC_DEVICE(obj); =20 - static const uint8_t acpi_enable_cmd =3D ICH9_APM_ACPI_ENABLE; - static const uint8_t acpi_disable_cmd =3D ICH9_APM_ACPI_DISABLE; + static uint8_t acpi_enable_cmd =3D ICH9_APM_ACPI_ENABLE; + static uint8_t acpi_disable_cmd =3D ICH9_APM_ACPI_DISABLE; =20 object_property_add_uint8_ptr(obj, ACPI_PM_PROP_SCI_INT, &lpc->sci_gsi, OBJ_PROP_FLAG_READ); --=20 2.26.2 From nobody Sun Nov 16 23:04:00 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602271059; cv=none; d=zohomail.com; s=zohoarc; b=dwuFTXtfMgj3jwYMgyp+0rgrn8EMGZPYzSsW46Hn0sBL++DA0G09ZEdoVHx0n+fLIFR0H8PKZjh+2Engia/vt+XelyGzGZoh94orYRUpg0CDS1xqBANszox93zPTdckWictoRoYUUcX9LJO8kRqIeol8mT/kPQ7Vd7IOkLNFFH4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602271059; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=APMCuA+kGZhAUSQKhWHMtsGZmjMgpPqNQ7KZLQNpwwI=; b=Q0aHxcce8dMuJrlnlNL9jUYuN+9AI0/NX46Jwh259FzRXXb1yjJ7NlDZUCFvFn+zqmGp7hVh8mcoGtyroTNbVhxrSIi0Jg9WORDIbu8dv6FK3deJbLT15D2krXlyMcSolsFECFkijkerNDVnsFgyGSiB9T2Qfj1RHLZAa83pdRI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602271059392623.4507935638604; Fri, 9 Oct 2020 12:17:39 -0700 (PDT) Received: from localhost ([::1]:56544 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kQxta-0001j8-5B for importer@patchew.org; Fri, 09 Oct 2020 15:17:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44208) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kQxrn-0000OR-2b for qemu-devel@nongnu.org; Fri, 09 Oct 2020 15:15:47 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:31904) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kQxrl-0000PT-BA for qemu-devel@nongnu.org; Fri, 09 Oct 2020 15:15:46 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-214-SNIYI9pHPjKWbOBaeLk78Q-1; Fri, 09 Oct 2020 15:15:42 -0400 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 6BA9F1084CA1; Fri, 9 Oct 2020 19:15:41 +0000 (UTC) Received: from localhost (ovpn-119-102.rdu2.redhat.com [10.10.119.102]) by smtp.corp.redhat.com (Postfix) with ESMTP id 7C97D1A885; Fri, 9 Oct 2020 19:15:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602270944; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=APMCuA+kGZhAUSQKhWHMtsGZmjMgpPqNQ7KZLQNpwwI=; b=fTlwzfFkFi4k+OSRf8gfzWKKTMQhK8OLb44HIx2pNfSDnAweQfMvDjEjlsDSgxlQNjpn/O yLtGeCG9GyqWG9RCsP4lP/4DZyKdRLDr0Uy0UJjLVqLJz/AEftnkNlBELOIvPi8QZ2tuT3 Eqjg9n+5EjrAShucSLlk3WEhxA2I/1Q= X-MC-Unique: SNIYI9pHPjKWbOBaeLk78Q-1 From: Eduardo Habkost To: qemu-devel@nongnu.org Subject: [PATCH 2/3] qom: Make object_property_add_uint*_ptr() get non-const pointers Date: Fri, 9 Oct 2020 15:15:19 -0400 Message-Id: <20201009191520.1799419-3-ehabkost@redhat.com> In-Reply-To: <20201009191520.1799419-1-ehabkost@redhat.com> References: <20201009191520.1799419-1-ehabkost@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=ehabkost@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=ehabkost@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/09 02:34:40 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Igor Mammedov , "Michael S. Tsirkin" , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Markus Armbruster , Aleksandar Markovic , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Paolo Bonzini , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" Currently, the getter/setter functions are awkward because the visit_type_uint*() functions provided by QAPI will always write a value to the provided pointer. Getting a non-const pointer will allow us to simplify a lot of the getters/setters logic. Signed-off-by: Eduardo Habkost --- include/qom/object.h | 8 ++++---- qom/object.c | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/include/qom/object.h b/include/qom/object.h index a124cf897d..1441807be6 100644 --- a/include/qom/object.h +++ b/include/qom/object.h @@ -1744,7 +1744,7 @@ typedef enum { * Returns: The newly added property on success, or %NULL on failure. */ ObjectProperty *object_property_add_uint8_ptr(Object *obj, const char *nam= e, - const uint8_t *v, + uint8_t *v, ObjectPropertyFlags flags); =20 ObjectProperty *object_class_property_add_uint8_ptr(ObjectClass *klass, @@ -1765,7 +1765,7 @@ ObjectProperty *object_class_property_add_uint8_ptr(O= bjectClass *klass, * Returns: The newly added property on success, or %NULL on failure. */ ObjectProperty *object_property_add_uint16_ptr(Object *obj, const char *na= me, - const uint16_t *v, + uint16_t *v, ObjectPropertyFlags flags); =20 ObjectProperty *object_class_property_add_uint16_ptr(ObjectClass *klass, @@ -1786,7 +1786,7 @@ ObjectProperty *object_class_property_add_uint16_ptr(= ObjectClass *klass, * Returns: The newly added property on success, or %NULL on failure. */ ObjectProperty *object_property_add_uint32_ptr(Object *obj, const char *na= me, - const uint32_t *v, + uint32_t *v, ObjectPropertyFlags flags); =20 ObjectProperty *object_class_property_add_uint32_ptr(ObjectClass *klass, @@ -1807,7 +1807,7 @@ ObjectProperty *object_class_property_add_uint32_ptr(= ObjectClass *klass, * Returns: The newly added property on success, or %NULL on failure. */ ObjectProperty *object_property_add_uint64_ptr(Object *obj, const char *na= me, - const uint64_t *v, + uint64_t *v, ObjectPropertyFlags flags); =20 ObjectProperty *object_class_property_add_uint64_ptr(ObjectClass *klass, diff --git a/qom/object.c b/qom/object.c index 73f27b8b7e..6b4dfc279a 100644 --- a/qom/object.c +++ b/qom/object.c @@ -2623,7 +2623,7 @@ object_class_property_add_uint_ptr(ObjectClass *oc, c= onst char *name, =20 ObjectProperty * object_property_add_uint8_ptr(Object *obj, const char *name, - const uint8_t *v, + uint8_t *v, ObjectPropertyFlags flags) { return object_property_add_uint_ptr(obj, name, "uint8", @@ -2646,7 +2646,7 @@ object_class_property_add_uint8_ptr(ObjectClass *klas= s, const char *name, =20 ObjectProperty * object_property_add_uint16_ptr(Object *obj, const char *name, - const uint16_t *v, + uint16_t *v, ObjectPropertyFlags flags) { return object_property_add_uint_ptr(obj, name, "uint16", @@ -2669,7 +2669,7 @@ object_class_property_add_uint16_ptr(ObjectClass *kla= ss, const char *name, =20 ObjectProperty * object_property_add_uint32_ptr(Object *obj, const char *name, - const uint32_t *v, + uint32_t *v, ObjectPropertyFlags flags) { return object_property_add_uint_ptr(obj, name, "uint32", @@ -2692,7 +2692,7 @@ object_class_property_add_uint32_ptr(ObjectClass *kla= ss, const char *name, =20 ObjectProperty * object_property_add_uint64_ptr(Object *obj, const char *name, - const uint64_t *v, + uint64_t *v, ObjectPropertyFlags flags) { return object_property_add_uint_ptr(obj, name, "uint64", --=20 2.26.2 From nobody Sun Nov 16 23:04:00 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1602271169; cv=none; d=zohomail.com; s=zohoarc; b=OlUWkNRUUoCdZWEU6d2fSncLi6+6MfXtBk48UNZmVDxoMXp5k7UPzISEcxZo8vRWkzsseeEhGDPDm9evKd2N57qEsbpSt4PamwyTnCLCrD28dmeyWlIWTCAJz9cgVFTjhO4lnmA8xVUlgm91EwnRg8hiErLJ2dQnYcabdx4vaBs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1602271169; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=ogH/FuOlxStCUd7+LcfJbj3FDvyHTMFFmUxuDa2v9/E=; b=EsXeONgIjmy3gWTRLJtt4bmYhsFNRHMNyck6iKvZPvhamJzEPksupjB1I3sXufZMG52I4N8s4rXThrqbx16ZRtXvHMcwe16R8hFygbi/LVjmvIbzrhtTTmBhZ7ATbqN/ihgQKTwQ1uUf3WoVGBKYMig1fE+Zg4A+nVwByA2NTtY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1602271169090274.9584316000863; Fri, 9 Oct 2020 12:19:29 -0700 (PDT) Received: from localhost ([::1]:60666 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kQxvK-0003Vc-DM for importer@patchew.org; Fri, 09 Oct 2020 15:19:26 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44220) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kQxrt-0000bV-SS for qemu-devel@nongnu.org; Fri, 09 Oct 2020 15:15:53 -0400 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:31392) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.90_1) (envelope-from ) id 1kQxrr-0000S8-SC for qemu-devel@nongnu.org; Fri, 09 Oct 2020 15:15:53 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-312-jM3NiHPtPMWWS0LmpjGjUQ-1; Fri, 09 Oct 2020 15:15:49 -0400 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 2216C80403A; Fri, 9 Oct 2020 19:15:48 +0000 (UTC) Received: from localhost (ovpn-119-102.rdu2.redhat.com [10.10.119.102]) by smtp.corp.redhat.com (Postfix) with ESMTP id 531AD5C1BB; Fri, 9 Oct 2020 19:15:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1602270951; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=ogH/FuOlxStCUd7+LcfJbj3FDvyHTMFFmUxuDa2v9/E=; b=VHaGURhG9ct8JU6LDzAAjNbqJsGC0k5JuxJQA3MaY8BiHlpw6EfsVZv0UJhUdHzPEDU1Xt +eX3jXHAlX+OkkpcZl24wcqwpmf3Lv72AL/MclAyc3NYi8tyG9wRcRVpwTs43CnUsEMZOH laGP4mTpYD7RhpgcN2c/kWA3kw3ujN0= X-MC-Unique: jM3NiHPtPMWWS0LmpjGjUQ-1 From: Eduardo Habkost To: qemu-devel@nongnu.org Subject: [PATCH 3/3] qom: Simplify and merge pointer property getters/setters Date: Fri, 9 Oct 2020 15:15:20 -0400 Message-Id: <20201009191520.1799419-4-ehabkost@redhat.com> In-Reply-To: <20201009191520.1799419-1-ehabkost@redhat.com> References: <20201009191520.1799419-1-ehabkost@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=ehabkost@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=63.128.21.124; envelope-from=ehabkost@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/09 02:34:40 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , Igor Mammedov , "Michael S. Tsirkin" , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Markus Armbruster , Aleksandar Markovic , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Paolo Bonzini , Aurelien Jarno Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" Both the property getter and setter for pointer properties can simply call the visitor functions directly, instead of making extra copies and requiring additional logic. Remove the extra copying logic, and merge the getter and setter functions in object_visit_uint*_ptr() accessors. Signed-off-by: Eduardo Habkost --- qom/object.c | 114 ++++++++++----------------------------------------- 1 file changed, 22 insertions(+), 92 deletions(-) diff --git a/qom/object.c b/qom/object.c index 6b4dfc279a..3b343fd118 100644 --- a/qom/object.c +++ b/qom/object.c @@ -2496,119 +2496,57 @@ static void *pointer_property_get_ptr(Object *obj,= PointerProperty *prop) } } =20 -static void property_get_uint8_ptr(Object *obj, Visitor *v, const char *na= me, +static void property_visit_uint8_ptr(Object *obj, Visitor *v, const char *= name, void *opaque, Error **errp) { PointerProperty *prop =3D opaque; uint8_t *field =3D pointer_property_get_ptr(obj, prop); - uint8_t value =3D *field; - visit_type_uint8(v, name, &value, errp); + visit_type_uint8(v, name, field, errp); } =20 -static void property_set_uint8_ptr(Object *obj, Visitor *v, const char *na= me, - void *opaque, Error **errp) -{ - PointerProperty *prop =3D opaque; - uint8_t *field =3D pointer_property_get_ptr(obj, prop); - uint8_t value; - - if (!visit_type_uint8(v, name, &value, errp)) { - return; - } - - *field =3D value; -} - -static void property_get_uint16_ptr(Object *obj, Visitor *v, const char *n= ame, +static void property_visit_uint16_ptr(Object *obj, Visitor *v, const char = *name, void *opaque, Error **errp) { PointerProperty *prop =3D opaque; uint16_t *field =3D pointer_property_get_ptr(obj, prop); - uint16_t value =3D *field; - visit_type_uint16(v, name, &value, errp); -} - -static void property_set_uint16_ptr(Object *obj, Visitor *v, const char *n= ame, - void *opaque, Error **errp) -{ - PointerProperty *prop =3D opaque; - uint16_t *field =3D pointer_property_get_ptr(obj, prop); - uint16_t value; - - if (!visit_type_uint16(v, name, &value, errp)) { - return; - } - - *field =3D value; + visit_type_uint16(v, name, field, errp); } =20 -static void property_get_uint32_ptr(Object *obj, Visitor *v, const char *n= ame, +static void property_visit_uint32_ptr(Object *obj, Visitor *v, const char = *name, void *opaque, Error **errp) { PointerProperty *prop =3D opaque; uint32_t *field =3D pointer_property_get_ptr(obj, prop); - uint32_t value =3D *field; - visit_type_uint32(v, name, &value, errp); + visit_type_uint32(v, name, field, errp); } =20 -static void property_set_uint32_ptr(Object *obj, Visitor *v, const char *n= ame, - void *opaque, Error **errp) -{ - PointerProperty *prop =3D opaque; - uint32_t *field =3D pointer_property_get_ptr(obj, prop); - uint32_t value; - - if (!visit_type_uint32(v, name, &value, errp)) { - return; - } - - *field =3D value; -} - -static void property_get_uint64_ptr(Object *obj, Visitor *v, const char *n= ame, +static void property_visit_uint64_ptr(Object *obj, Visitor *v, const char = *name, void *opaque, Error **errp) { PointerProperty *prop =3D opaque; uint64_t *field =3D pointer_property_get_ptr(obj, prop); - uint64_t value =3D *field; - visit_type_uint64(v, name, &value, errp); -} - -static void property_set_uint64_ptr(Object *obj, Visitor *v, const char *n= ame, - void *opaque, Error **errp) -{ - PointerProperty *prop =3D opaque; - uint64_t *field =3D pointer_property_get_ptr(obj, prop); - uint64_t value; - - if (!visit_type_uint64(v, name, &value, errp)) { - return; - } - - *field =3D value; + visit_type_uint64(v, name, field, errp); } =20 static ObjectProperty * object_property_add_uint_ptr(Object *obj, const char *name, const char *type, - ObjectPropertyAccessor getter, - ObjectPropertyAccessor setter, + ObjectPropertyAccessor accessor, ObjectPropertyFlags flags, void *ptr) { PointerProperty *prop =3D g_new0(PointerProperty, 1); prop->ptr =3D ptr; return object_property_add(obj, name, type, - (flags & OBJ_PROP_FLAG_READ) ? getter : NUL= L, - (flags & OBJ_PROP_FLAG_WRITE) ? setter : NU= LL, + (flags & OBJ_PROP_FLAG_READ) ? accessor : N= ULL, + (flags & OBJ_PROP_FLAG_WRITE) ? accessor : = NULL, NULL, (void *)prop); } =20 static ObjectProperty * object_class_property_add_uint_ptr(ObjectClass *oc, const char *name, const char *type, - ObjectPropertyAccessor getter, - ObjectPropertyAccessor setter, + ObjectPropertyAccessor accessor, ObjectPropertyFlags flags, ptrdiff_t offset) { @@ -2616,8 +2554,8 @@ object_class_property_add_uint_ptr(ObjectClass *oc, c= onst char *name, prop->is_offset =3D true; prop->offset =3D offset; return object_class_property_add(oc, name, type, - (flags & OBJ_PROP_FLAG_READ) ? getter= : NULL, - (flags & OBJ_PROP_FLAG_WRITE) ? sette= r : NULL, + (flags & OBJ_PROP_FLAG_READ) ? access= or : NULL, + (flags & OBJ_PROP_FLAG_WRITE) ? acces= sor : NULL, NULL, (void *)prop); } =20 @@ -2627,8 +2565,7 @@ object_property_add_uint8_ptr(Object *obj, const char= *name, ObjectPropertyFlags flags) { return object_property_add_uint_ptr(obj, name, "uint8", - property_get_uint8_ptr, - property_set_uint8_ptr, + property_visit_uint8_ptr, flags, (void *)v); } @@ -2639,8 +2576,7 @@ object_class_property_add_uint8_ptr(ObjectClass *klas= s, const char *name, ObjectPropertyFlags flags) { return object_class_property_add_uint_ptr(klass, name, "uint8", - property_get_uint8_ptr, - property_set_uint8_ptr, + property_visit_uint8_ptr, flags, offset); } =20 @@ -2650,8 +2586,7 @@ object_property_add_uint16_ptr(Object *obj, const cha= r *name, ObjectPropertyFlags flags) { return object_property_add_uint_ptr(obj, name, "uint16", - property_get_uint16_ptr, - property_set_uint16_ptr, + property_visit_uint16_ptr, flags, (void *)v); } @@ -2662,8 +2597,7 @@ object_class_property_add_uint16_ptr(ObjectClass *kla= ss, const char *name, ObjectPropertyFlags flags) { return object_class_property_add_uint_ptr(klass, name, "uint16", - property_get_uint16_ptr, - property_set_uint16_ptr, + property_visit_uint16_ptr, flags, offset); } =20 @@ -2673,8 +2607,7 @@ object_property_add_uint32_ptr(Object *obj, const cha= r *name, ObjectPropertyFlags flags) { return object_property_add_uint_ptr(obj, name, "uint32", - property_get_uint32_ptr, - property_set_uint32_ptr, + property_visit_uint32_ptr, flags, (void *)v); } @@ -2685,8 +2618,7 @@ object_class_property_add_uint32_ptr(ObjectClass *kla= ss, const char *name, ObjectPropertyFlags flags) { return object_class_property_add_uint_ptr(klass, name, "uint32", - property_get_uint32_ptr, - property_set_uint32_ptr, + property_visit_uint32_ptr, flags, offset); } =20 @@ -2696,8 +2628,7 @@ object_property_add_uint64_ptr(Object *obj, const cha= r *name, ObjectPropertyFlags flags) { return object_property_add_uint_ptr(obj, name, "uint64", - property_get_uint64_ptr, - property_set_uint64_ptr, + property_visit_uint64_ptr, flags, (void *)v); } @@ -2708,8 +2639,7 @@ object_class_property_add_uint64_ptr(ObjectClass *kla= ss, const char *name, ObjectPropertyFlags flags) { return object_class_property_add_uint_ptr(klass, name, "uint64", - property_get_uint64_ptr, - property_set_uint64_ptr, + property_visit_uint64_ptr, flags, offset); } =20 --=20 2.26.2