On Tue, Feb 10, 2026 at 11:23:41 +0800, Zhao Liu wrote:
Update qdev property interfaces (qdev_property_add_static() and qdev_class_add_property()) to accept and pass 'ObjectPropertyFlags'. This enables marking qdev properties with flags such as DEPRECATED or INTERNAL.
To facilitate this at the definition level, extend the boolean and uint8_t property macros (as the examples) to accept variable arguments (VA_ARGS). This allows callers to optionally specify flags in the property definition.
Example:
DEFINE_PROP_UINT8("version", IOAPICCommonState, version, IOAPIC_VER_DEF, .flags = OBJECT_PROPERTY_DEPRECATED),
Is there a plan to expose at least the _DEPRECATED property to be introspectable (e.g. via qom-list-properties or device-list-properties) ? In libvirt we try to stay proactive about adapting to deprecations and this would allow our test-suite to detect deprecations programmaticaly similarly to how we detect deprecations via query-qmp-schema. Although with the current patchset there doesn't seem to be anything that libvirt would need to adapt to.