From: Gerd Hoffmann <kra...@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 <kra...@redhat.com> Reviewed-by: Jose R. Ziviani <jzivi...@suse.de> Message-Id: <20210624103836.2382472-20-kra...@redhat.com> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- util/module.c | 6 ++++++ 1 file changed, 6 insertions(+) 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; -- 2.31.1