On Fri, Jul 03, 2026 at 02:53:03PM +0100, Mark Cave-Ayland wrote:
> This more accurately reflects that these properties are held within the class 
> and
> not the object.
> 
> Signed-off-by: Mark Cave-Ayland <[email protected]>
> ---
>  include/qom/object.h |  8 ++++----
>  hw/riscv/spike.c     |  5 +++--
>  qom/object.c         | 28 ++++++++++++++++------------
>  3 files changed, 23 insertions(+), 18 deletions(-)
> 
> diff --git a/include/qom/object.h b/include/qom/object.h
> index 11f55613fc..89c23d45ab 100644
> --- a/include/qom/object.h
> +++ b/include/qom/object.h
> @@ -1956,7 +1956,7 @@ ObjectProperty *object_property_add_uint8_ptr(Object 
> *obj, const char *name,
>                                                const uint8_t *v,
>                                                ObjectPropertyFlags flags);
>  
> -ObjectProperty *object_class_property_add_uint8_ptr(ObjectClass *klass,
> +ObjectProperty *object_class_static_property_add_uint8_ptr(ObjectClass 
> *klass,
>                                           const char *name,
>                                           const uint8_t *v,
>                                           ObjectPropertyFlags flags);
> @@ -1977,7 +1977,7 @@ ObjectProperty *object_property_add_uint16_ptr(Object 
> *obj, const char *name,
>                                      const uint16_t *v,
>                                      ObjectPropertyFlags flags);
>  
> -ObjectProperty *object_class_property_add_uint16_ptr(ObjectClass *klass,
> +ObjectProperty *object_class_static_property_add_uint16_ptr(ObjectClass 
> *klass,
>                                            const char *name,
>                                            const uint16_t *v,
>                                            ObjectPropertyFlags flags);
> @@ -1998,7 +1998,7 @@ ObjectProperty *object_property_add_uint32_ptr(Object 
> *obj, const char *name,
>                                      const uint32_t *v,
>                                      ObjectPropertyFlags flags);
>  
> -ObjectProperty *object_class_property_add_uint32_ptr(ObjectClass *klass,
> +ObjectProperty *object_class_static_property_add_uint32_ptr(ObjectClass 
> *klass,
>                                            const char *name,
>                                            const uint32_t *v,
>                                            ObjectPropertyFlags flags);
> @@ -2019,7 +2019,7 @@ ObjectProperty *object_property_add_uint64_ptr(Object 
> *obj, const char *name,
>                                      const uint64_t *v,
>                                      ObjectPropertyFlags flags);
>  
> -ObjectProperty *object_class_property_add_uint64_ptr(ObjectClass *klass,
> +ObjectProperty *object_class_static_property_add_uint64_ptr(ObjectClass 
> *klass,
>                                            const char *name,
>                                            const uint64_t *v,
>                                            ObjectPropertyFlags flags);
> diff --git a/hw/riscv/spike.c b/hw/riscv/spike.c
> index 9fde0faf39..630b65f569 100644
> --- a/hw/riscv/spike.c
> +++ b/hw/riscv/spike.c
> @@ -278,8 +278,9 @@ static void spike_machine_class_init(ObjectClass *oc, 
> const void *data)
>      object_class_property_add_str(oc, "signature", NULL, 
> spike_set_signature);
>      object_class_property_set_description(oc, "signature",
>                                            "File to write ACT test 
> signature");
> -    object_class_property_add_uint8_ptr(oc, "signature-granularity",
> -                                        &line_size, OBJ_PROP_FLAG_WRITE);
> +    object_class_static_property_add_uint8_ptr(oc, "signature-granularity",
> +                                               &line_size,
> +                                               OBJ_PROP_FLAG_WRITE);

When we have just one use of these "static property" API in the code base,
I wonder if we genuinely need these APIs ?

I wonder why "line_size" isn't merely a field in the machine class ?
External code ought to be able to fetch the current machine and read
a line_size struct field, surely ?


With regards,
Daniel
-- 
|: https://berrange.com       ~~        https://hachyderm.io/@berrange :|
|: https://libvirt.org          ~~          https://entangle-photo.org :|
|: https://pixelfed.art/berrange   ~~    https://fstop138.berrange.com :|


Reply via email to