On Mon, 21 Sep 2020 at 23:11, Eduardo Habkost <ehabk...@redhat.com> wrote: > > Class properties make QOM introspection simpler and easier, as > they don't require an object to be instantiated. > > Note: "its" is currently registered conditionally, but this makes > the feature be registered unconditionally. The only side effect > is that it will be now possible to set its=on on virt-2.7 and > older. > > Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> > --- > Cc: Peter Maydell <peter.mayd...@linaro.org> > Cc: qemu-...@nongnu.org > Cc: qemu-devel@nongnu.org > --- > hw/arm/virt.c | 12 +++++++----- > 1 file changed, 7 insertions(+), 5 deletions(-) > > diff --git a/hw/arm/virt.c b/hw/arm/virt.c > index d1ab660fa60..986b75a6b89 100644 > --- a/hw/arm/virt.c > +++ b/hw/arm/virt.c > @@ -2484,6 +2484,13 @@ static void virt_machine_class_init(ObjectClass *oc, > void *data) > "Set on/off to enable/disable > emulating a " > "guest CPU which implements the > ARM " > "Memory Tagging Extension"); > + > + object_class_property_add_bool(oc, "its", virt_get_its, > + virt_set_its); > + object_class_property_set_description(oc, "its", > + "Set on/off to enable/disable " > + "ITS instantiation"); > + > } > > static void virt_instance_init(Object *obj) > @@ -2511,11 +2518,6 @@ static void virt_instance_init(Object *obj) > } else { > /* Default allows ITS instantiation */ > vms->its = true; > - object_property_add_bool(obj, "its", virt_get_its, > - virt_set_its); > - object_property_set_description(obj, "its", > - "Set on/off to enable/disable " > - "ITS instantiation"); > }
This leaves the code reading if (vmc->no_its) { vms->its = false; } else { vms->its = true; } which is more simply written "vms->its = !vmc->no_its;" thanks -- PMM