OSDN Git Service

object_initialize: try module load
authorGerd Hoffmann <kraxel@redhat.com>
Mon, 14 Sep 2020 13:42:22 +0000 (15:42 +0200)
committerGerd Hoffmann <kraxel@redhat.com>
Tue, 15 Sep 2020 12:11:49 +0000 (14:11 +0200)
Needed to allow virtio-gpu-pci initialize the
virtio-gpu-device child device.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Message-id: 20200914134224.29769-5-kraxel@redhat.com

qom/object.c

index b1822a2..387efb2 100644 (file)
@@ -518,6 +518,12 @@ void object_initialize(void *data, size_t size, const char *typename)
 {
     TypeImpl *type = type_get_by_name(typename);
 
+#ifdef CONFIG_MODULES
+    if (!type) {
+        module_load_qom_one(typename);
+        type = type_get_by_name(typename);
+    }
+#endif
     if (!type) {
         error_report("missing object type '%s'", typename);
         abort();