diff options
Diffstat (limited to 'init/main.c')
-rw-r--r-- | init/main.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/init/main.c b/init/main.c index 29d8d847de94..217ed23e9487 100644 --- a/init/main.c +++ b/init/main.c @@ -163,7 +163,7 @@ static int __init obsolete_checksetup(char *line) p = __setup_start; do { int n = strlen(p->str); - if (!strncmp(line, p->str, n)) { + if (parameqn(line, p->str, n)) { if (p->early) { /* Already done in parse_early_param? * (Needs exact match on param part). @@ -381,9 +381,6 @@ static noinline void __init_refok rest_init(void) preempt_enable_no_resched(); schedule(); - /* At this point, we can enable user mode helper functionality */ - usermodehelper_enable(); - /* Call into cpu_idle with preempt disabled */ preempt_disable(); cpu_idle(); @@ -395,7 +392,7 @@ static int __init do_early_param(char *param, char *val) const struct obs_kernel_param *p; for (p = __setup_start; p < __setup_end; p++) { - if ((p->early && strcmp(param, p->str) == 0) || + if ((p->early && parameq(param, p->str)) || (strcmp(param, "console") == 0 && strcmp(p->str, "earlycon") == 0) ) { @@ -736,6 +733,7 @@ static void __init do_basic_setup(void) driver_init(); init_irq_proc(); do_ctors(); + usermodehelper_enable(); do_initcalls(); } |