Daniel P. Berrangé <[email protected]> writes: > 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. >
True, but code like qdev_property_add_static() already mixes things up quite a bit. Not that this is justification to mix it even more, of course. > With regards, > Daniel
