diff mbox series

[PULL,23/48] modules: check arch on qom lookup

Message ID 20210708151748.408754-24-pbonzini@redhat.com (mailing list archive)
State New, archived
Headers show
Series [PULL,01/48] configure: fix libdaxctl options | expand

Commit Message

Paolo Bonzini July 8, 2021, 3:17 p.m. UTC
From: Gerd Hoffmann <kraxel@redhat.com>

With target-specific modules we can have multiple modules implementing
the same object.  Therefore we have to check the target arch on lookup
to find the correct module.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Jose R. Ziviani <jziviani@suse.de>
Message-Id: <20210624103836.2382472-20-kraxel@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 util/module.c | 6 ++++++
 1 file changed, 6 insertions(+)
diff mbox series

Patch

diff --git a/util/module.c b/util/module.c
index 065aed09ff..6bb4ad915a 100644
--- a/util/module.c
+++ b/util/module.c
@@ -329,6 +329,9 @@  void module_load_qom_one(const char *type)
         if (!modinfo->objs) {
             continue;
         }
+        if (!module_check_arch(modinfo)) {
+            continue;
+        }
         for (sl = modinfo->objs; *sl != NULL; sl++) {
             if (strcmp(type, *sl) == 0) {
                 module_load_one("", modinfo->name, false);
@@ -349,6 +352,9 @@  void module_load_qom_all(void)
         if (!modinfo->objs) {
             continue;
         }
+        if (!module_check_arch(modinfo)) {
+            continue;
+        }
         module_load_one("", modinfo->name, false);
     }
     module_loaded_qom_all = true;