mirror of
https://github.com/torvalds/linux.git
synced 2026-11-06 21:58:01 +01:00
init/bootconfig: pass init arguments in documented order
start_kernel() appends command-line init arguments before
bootconfig init arguments, while setup_command_line()
places them in the opposite order. As a result, the
arguments passed to init do not match the saved command
line, reversing the intended precedence of options.
Parse extra_init_args before after_dashes so command-line
init arguments are passed last.
Link: https://lore.kernel.org/all/20261027073719.4010659-2-thnkslprpt@gmail.com/
Fixes: b66fbbe8d4 ("init/bootconfig: Reorder init parameter from bootconfig and cmdline")
Signed-off-by: Avi Weiss <thnkslprpt@gmail.com>
Cc: stable@vger.kernel.org
Signed-off-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
This commit is contained in:
parent
c03c1a1450
commit
278b2abf66
|
|
@ -1028,12 +1028,12 @@ void start_kernel(void)
|
|||
__stop___param - __start___param,
|
||||
-1, -1, NULL, &unknown_bootoption);
|
||||
print_unknown_bootoptions();
|
||||
if (!IS_ERR_OR_NULL(after_dashes))
|
||||
parse_args("Setting init args", after_dashes, NULL, 0, -1, -1,
|
||||
NULL, set_init_arg);
|
||||
if (extra_init_args)
|
||||
parse_args("Setting extra init args", extra_init_args,
|
||||
NULL, 0, -1, -1, NULL, set_init_arg);
|
||||
if (!IS_ERR_OR_NULL(after_dashes))
|
||||
parse_args("Setting init args", after_dashes, NULL, 0, -1, -1,
|
||||
NULL, set_init_arg);
|
||||
|
||||
/* Architectural and non-timekeeping rng init, before allocator init */
|
||||
random_init_early(command_line);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user