On Thu, Jun 04, 2026 at 07:11:16PM -0400, Peter Xu wrote:
> The helper allows one object to apply anything from -global command lines
> to an object.
> 
> Signed-off-by: Peter Xu <[email protected]>
> ---
>  include/hw/core/qdev-properties.h | 1 +
>  hw/core/qdev-properties.c         | 5 +++++
>  2 files changed, 6 insertions(+)
> 
> diff --git a/include/hw/core/qdev-properties.h 
> b/include/hw/core/qdev-properties.h
> index eba5436e53..779acb31b6 100644
> --- a/include/hw/core/qdev-properties.h
> +++ b/include/hw/core/qdev-properties.h
> @@ -268,6 +268,7 @@ const GlobalProperty *qdev_find_global_prop(Object *obj,
>                                              const char *name);
>  int qdev_prop_check_globals(void);
>  void qdev_prop_set_globals(DeviceState *dev);
> +void object_apply_globals(Object *obj);
>  void error_set_from_qdev_prop_error(Error **errp, int ret, Object *obj,
>                                      const char *name, const char *value);
>  
> diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c
> index 8f870c85fc..a91c2ad101 100644
> --- a/hw/core/qdev-properties.c
> +++ b/hw/core/qdev-properties.c
> @@ -1045,6 +1045,11 @@ void qdev_prop_set_globals(DeviceState *dev)
>                                dev->hotplugged ? NULL : &error_fatal);
>  }
>  
> +void object_apply_globals(Object *obj)
> +{
> +    object_apply_global_props(obj, global_props(), &error_fatal);
> +}

If a method has the "object_" prefix and takex "Object *" as its
instance, then it needs to live in qom/object.c / include/qom/object.h
but this again has the complexity of relying on the qdev Property
struct.  This is really mixing qdev & qom layers together which I
find pretty unpleasant.

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