From: Paolo Bonzini Date: Tue, 29 Oct 2024 09:46:38 +0000 (+0100) Subject: qom: allow user-creatable classes to be in modules X-Git-Tag: v9.2.0-rc0~27^2~34 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f41823e059d3460e116d1c29d8577649d48fcf33;p=thirdparty%2Fqemu.git qom: allow user-creatable classes to be in modules There is no real reason to make user-creatable classes different from other backends in this respect. This also allows modularized character devices to be treated by qom-list-properties just like builtin ones. Reviewed-by: Richard Henderson Signed-off-by: Paolo Bonzini --- diff --git a/qom/object_interfaces.c b/qom/object_interfaces.c index 1f2aa133066..1a6f29c053e 100644 --- a/qom/object_interfaces.c +++ b/qom/object_interfaces.c @@ -90,7 +90,7 @@ Object *user_creatable_add_type(const char *type, const char *id, return NULL; } - klass = object_class_by_name(type); + klass = module_object_class_by_name(type); if (!klass) { error_setg(errp, "invalid object type: %s", type); return NULL; diff --git a/qom/qom-qmp-cmds.c b/qom/qom-qmp-cmds.c index 69a8e17aa80..46e4562300c 100644 --- a/qom/qom-qmp-cmds.c +++ b/qom/qom-qmp-cmds.c @@ -186,7 +186,7 @@ ObjectPropertyInfoList *qmp_qom_list_properties(const char *typename, ObjectPropertyIterator iter; ObjectPropertyInfoList *prop_list = NULL; - klass = object_class_by_name(typename); + klass = module_object_class_by_name(typename); if (klass == NULL) { error_set(errp, ERROR_CLASS_DEVICE_NOT_FOUND, "Class '%s' not found", typename);