diff options
Diffstat (limited to 'init/main.c')
-rw-r--r-- | init/main.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/init/main.c b/init/main.c index 18efadb11cf6..ef139bda591e 100644 --- a/init/main.c +++ b/init/main.c @@ -810,10 +810,12 @@ void __init load_default_modules(void) static int run_init_process(const char *init_filename) { argv_init[0] = init_filename; - return kernel_execve(init_filename, argv_init, envp_init); + return do_execve(init_filename, + (const char __user *const __user *)argv_init, + (const char __user *const __user *)envp_init); } -static void __init kernel_init_freeable(void); +static noinline void __init kernel_init_freeable(void); static int __ref kernel_init(void *unused) { @@ -856,7 +858,7 @@ static int __ref kernel_init(void *unused) "See Linux Documentation/init.txt for guidance."); } -static void __init kernel_init_freeable(void) +static noinline void __init kernel_init_freeable(void) { /* * Wait until kthreadd is all set-up. |