diff options
Diffstat (limited to 'kernel/module')
-rw-r--r-- | kernel/module/kallsyms.c | 9 | ||||
-rw-r--r-- | kernel/module/main.c | 2 |
2 files changed, 7 insertions, 4 deletions
diff --git a/kernel/module/kallsyms.c b/kernel/module/kallsyms.c index 77e75bead569..6a74545fc8a1 100644 --- a/kernel/module/kallsyms.c +++ b/kernel/module/kallsyms.c @@ -466,14 +466,17 @@ unsigned long module_kallsyms_lookup_name(const char *name) /* Don't lock: we're in enough trouble already. */ preempt_disable(); - if ((colon = strnchr(name, MODULE_NAME_LEN, ':')) != NULL) { - if ((mod = find_module_all(name, colon - name, false)) != NULL) + colon = strnchr(name, MODULE_NAME_LEN, ':'); + if (colon) { + mod = find_module_all(name, colon - name, false); + if (mod) ret = find_kallsyms_symbol_value(mod, colon + 1); } else { list_for_each_entry_rcu(mod, &modules, list) { if (mod->state == MODULE_STATE_UNFORMED) continue; - if ((ret = find_kallsyms_symbol_value(mod, name)) != 0) + ret = find_kallsyms_symbol_value(mod, name); + if (ret) break; } } diff --git a/kernel/module/main.c b/kernel/module/main.c index 07dd9c293ab9..b2de00e09abc 100644 --- a/kernel/module/main.c +++ b/kernel/module/main.c @@ -119,7 +119,7 @@ static void mod_update_bounds(struct module *mod) } /* Block module loading/unloading? */ -int modules_disabled = 0; +int modules_disabled; core_param(nomodule, modules_disabled, bint, 0); /* Waiting for a module to finish initializing? */ |