From: Eduardo Habkost <ehabkost@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Daniel P. Berrangé" <berrange@redhat.com>,
"Eduardo Habkost" <ehabkost@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
"Philippe Mathieu-Daudé" <f4bug@amsat.org>,
"Markus Armbruster" <armbru@redhat.com>,
"Igor Mammedov" <imammedo@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Aurelien Jarno" <aurelien@aurel32.net>
Subject: [PATCH 3/4] machine: Use object_class_property_add_bool_ptr() when possible
Date: Thu, 22 Oct 2020 18:31:39 -0400 [thread overview]
Message-ID: <20201022223140.2083123-4-ehabkost@redhat.com> (raw)
In-Reply-To: <20201022223140.2083123-1-ehabkost@redhat.com>
Get rid if some manually written properties getters/setters.
Not all properties could be converted because they have extra
logic in the property setter.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
Cc: Eduardo Habkost <ehabkost@redhat.com>
Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Cc: qemu-devel@nongnu.org
---
hw/core/machine.c | 78 ++++++++---------------------------------------
1 file changed, 13 insertions(+), 65 deletions(-)
diff --git a/hw/core/machine.c b/hw/core/machine.c
index d740a7e963..21cad22b9e 100644
--- a/hw/core/machine.c
+++ b/hw/core/machine.c
@@ -325,34 +325,6 @@ static void machine_set_dt_compatible(Object *obj, const char *value, Error **er
ms->dt_compatible = g_strdup(value);
}
-static bool machine_get_dump_guest_core(Object *obj, Error **errp)
-{
- MachineState *ms = MACHINE(obj);
-
- return ms->dump_guest_core;
-}
-
-static void machine_set_dump_guest_core(Object *obj, bool value, Error **errp)
-{
- MachineState *ms = MACHINE(obj);
-
- ms->dump_guest_core = value;
-}
-
-static bool machine_get_mem_merge(Object *obj, Error **errp)
-{
- MachineState *ms = MACHINE(obj);
-
- return ms->mem_merge;
-}
-
-static void machine_set_mem_merge(Object *obj, bool value, Error **errp)
-{
- MachineState *ms = MACHINE(obj);
-
- ms->mem_merge = value;
-}
-
static bool machine_get_usb(Object *obj, Error **errp)
{
MachineState *ms = MACHINE(obj);
@@ -368,20 +340,6 @@ static void machine_set_usb(Object *obj, bool value, Error **errp)
ms->usb_disabled = !value;
}
-static bool machine_get_graphics(Object *obj, Error **errp)
-{
- MachineState *ms = MACHINE(obj);
-
- return ms->enable_graphics;
-}
-
-static void machine_set_graphics(Object *obj, bool value, Error **errp)
-{
- MachineState *ms = MACHINE(obj);
-
- ms->enable_graphics = value;
-}
-
static char *machine_get_firmware(Object *obj, Error **errp)
{
MachineState *ms = MACHINE(obj);
@@ -397,20 +355,6 @@ static void machine_set_firmware(Object *obj, const char *value, Error **errp)
ms->firmware = g_strdup(value);
}
-static void machine_set_suppress_vmdesc(Object *obj, bool value, Error **errp)
-{
- MachineState *ms = MACHINE(obj);
-
- ms->suppress_vmdesc = value;
-}
-
-static bool machine_get_suppress_vmdesc(Object *obj, Error **errp)
-{
- MachineState *ms = MACHINE(obj);
-
- return ms->suppress_vmdesc;
-}
-
static void machine_set_enforce_config_section(Object *obj, bool value,
Error **errp)
{
@@ -449,7 +393,7 @@ static void machine_set_memory_encryption(Object *obj, const char *value,
* so there's no point in it trying to merge areas.
*/
if (value) {
- machine_set_mem_merge(obj, false, errp);
+ ms->mem_merge = false;
}
}
@@ -827,13 +771,15 @@ static void machine_class_init(ObjectClass *oc, void *data)
object_class_property_set_description(oc, "dt-compatible",
"Overrides the \"compatible\" property of the dt root node");
- object_class_property_add_bool(oc, "dump-guest-core",
- machine_get_dump_guest_core, machine_set_dump_guest_core);
+ object_class_property_add_bool_ptr(oc, "dump-guest-core",
+ offsetof(MachineState, dump_guest_core),
+ OBJ_PROP_FLAG_READWRITE);
object_class_property_set_description(oc, "dump-guest-core",
"Include guest memory in a core dump");
- object_class_property_add_bool(oc, "mem-merge",
- machine_get_mem_merge, machine_set_mem_merge);
+ object_class_property_add_bool_ptr(oc, "mem-merge",
+ offsetof(MachineState, mem_merge),
+ OBJ_PROP_FLAG_READWRITE);
object_class_property_set_description(oc, "mem-merge",
"Enable/disable memory merge support");
@@ -842,8 +788,9 @@ static void machine_class_init(ObjectClass *oc, void *data)
object_class_property_set_description(oc, "usb",
"Set on/off to enable/disable usb");
- object_class_property_add_bool(oc, "graphics",
- machine_get_graphics, machine_set_graphics);
+ object_class_property_add_bool_ptr(oc, "graphics",
+ offsetof(MachineState, enable_graphics),
+ OBJ_PROP_FLAG_READWRITE);
object_class_property_set_description(oc, "graphics",
"Set on/off to enable/disable graphics emulation");
@@ -852,8 +799,9 @@ static void machine_class_init(ObjectClass *oc, void *data)
object_class_property_set_description(oc, "firmware",
"Firmware image");
- object_class_property_add_bool(oc, "suppress-vmdesc",
- machine_get_suppress_vmdesc, machine_set_suppress_vmdesc);
+ object_class_property_add_bool_ptr(oc, "suppress-vmdesc",
+ offsetof(MachineState, suppress_vmdesc),
+ OBJ_PROP_FLAG_READWRITE);
object_class_property_set_description(oc, "suppress-vmdesc",
"Set on to disable self-describing migration");
--
2.28.0
next prev parent reply other threads:[~2020-10-22 22:37 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-22 22:31 [PATCH 0/4] qom: Introduce object*_property_add_bool_ptr() functions Eduardo Habkost
2020-10-22 22:31 ` [PATCH 1/4] qom: " Eduardo Habkost
2020-10-22 22:31 ` [PATCH 2/4] autz/listfile: Use object_class_property_add_bool_ptr() Eduardo Habkost
2020-10-22 22:31 ` Eduardo Habkost [this message]
2020-10-22 22:31 ` [PATCH 4/4] pc: " Eduardo Habkost
2020-10-23 7:37 ` [PATCH 0/4] qom: Introduce object*_property_add_bool_ptr() functions Philippe Mathieu-Daudé
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201022223140.2083123-4-ehabkost@redhat.com \
--to=ehabkost@redhat.com \
--cc=armbru@redhat.com \
--cc=aurelien@aurel32.net \
--cc=berrange@redhat.com \
--cc=f4bug@amsat.org \
--cc=imammedo@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).