From: Emil Velikov <emil.l.veli...@gmail.com>

When dealing with an elf, we don't know or care about loading the file.
The kmod_elf subsystem/API will deal with the required parts itself.

Which in this case, already calls kmod_file_load_contents() as
applicable.

Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com>
---
 libkmod/libkmod-module.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/libkmod/libkmod-module.c b/libkmod/libkmod-module.c
index 1e43482..d309948 100644
--- a/libkmod/libkmod-module.c
+++ b/libkmod/libkmod-module.c
@@ -903,10 +903,6 @@ static int do_init_module(struct kmod_module *mod, 
unsigned int flags,
        off_t size;
        int err;
 
-       err = kmod_file_load_contents(mod->file);
-       if (err)
-               return err;
-
        if (flags & (KMOD_INSERT_FORCE_VERMAGIC | 
KMOD_INSERT_FORCE_MODVERSION)) {
                elf = kmod_file_get_elf(mod->file);
                if (elf == NULL) {
@@ -928,6 +924,10 @@ static int do_init_module(struct kmod_module *mod, 
unsigned int flags,
 
                mem = kmod_elf_get_memory(elf);
        } else {
+               err = kmod_file_load_contents(mod->file);
+               if (err)
+                       return err;
+
                mem = kmod_file_get_contents(mod->file);
        }
        size = kmod_file_get_size(mod->file);

-- 
2.43.0


Reply via email to