From: Tom Rini - Remove saved_command_line (and saving of the command line). - Call parse_early_options --- 25-akpm/arch/um/kernel/um_arch.c | 1 + 25-akpm/arch/um/kernel/user_util.c | 1 - 25-akpm/include/asm-um/common.lds.S | 4 ++++ 3 files changed, 5 insertions(+), 1 deletion(-) diff -puN arch/um/kernel/um_arch.c~early-param-um arch/um/kernel/um_arch.c --- 25/arch/um/kernel/um_arch.c~early-param-um 2004-03-30 19:49:13.451893584 -0800 +++ 25-akpm/arch/um/kernel/um_arch.c 2004-03-30 19:49:13.455892976 -0800 @@ -395,6 +395,7 @@ void __init setup_arch(char **cmdline_p) paging_init(); strcpy(command_line, saved_command_line); *cmdline_p = command_line; + parse_early_options(cmdline_p); setup_hostinfo(); } diff -puN arch/um/kernel/user_util.c~early-param-um arch/um/kernel/user_util.c --- 25/arch/um/kernel/user_util.c~early-param-um 2004-03-30 19:49:13.452893432 -0800 +++ 25-akpm/arch/um/kernel/user_util.c 2004-03-30 19:49:13.456892824 -0800 @@ -34,7 +34,6 @@ #define COMMAND_LINE_SIZE _POSIX_ARG_MAX /* Changed in linux_main and setup_arch, which run before SMP is started */ -char saved_command_line[COMMAND_LINE_SIZE] = { 0 }; char command_line[COMMAND_LINE_SIZE] = { 0 }; void add_arg(char *cmd_line, char *arg) diff -puN include/asm-um/common.lds.S~early-param-um include/asm-um/common.lds.S --- 25/include/asm-um/common.lds.S~early-param-um 2004-03-30 19:49:13.453893280 -0800 +++ 25-akpm/include/asm-um/common.lds.S 2004-03-30 19:49:13.456892824 -0800 @@ -46,6 +46,10 @@ .init.setup : { *(.init.setup) } __setup_end = .; + __early_begin = .; + __early_param : { *(__early_param) } + __early_end = .; + __start___param = .; __param : { *(__param) } __stop___param = .; _