[PATCH] Dynamic kernel command-line: x86_64
authorAlon Bar-Lev <alon.barlev@gmail.com>
Mon, 12 Feb 2007 08:54:25 +0000 (00:54 -0800)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Mon, 12 Feb 2007 17:48:39 +0000 (09:48 -0800)
1. Rename saved_command_line into boot_command_line.
2. Set command_line as __initdata.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
Cc: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/x86_64/kernel/head64.c
arch/x86_64/kernel/setup.c
include/asm-x86_64/bootsetup.h

index cc230b93cd1c7081ea4483ac2aa8ec8192eb972a..be4bfb43d6dd852199522a48024f6db844c47646 100644 (file)
@@ -34,7 +34,7 @@ static void __init clear_bss(void)
 #define OLD_CL_BASE_ADDR        0x90000
 #define OLD_CL_OFFSET           0x90022
 
-extern char saved_command_line[];
+extern char __initdata boot_command_line[];
 
 static void __init copy_bootdata(char *real_mode_data)
 {
@@ -50,7 +50,7 @@ static void __init copy_bootdata(char *real_mode_data)
                new_data = OLD_CL_BASE_ADDR + * (u16 *) OLD_CL_OFFSET;
        }
        command_line = (char *) ((u64)(new_data));
-       memcpy(saved_command_line, command_line, COMMAND_LINE_SIZE);
+       memcpy(boot_command_line, command_line, COMMAND_LINE_SIZE);
 }
 
 void __init x86_64_start_kernel(char * real_mode_data)
index af425a8049fb5620596a0bc61bf005d399df3e32..60477244d1a371847ad69ac1c05237f0d0d06722 100644 (file)
@@ -100,7 +100,7 @@ EXPORT_SYMBOL_GPL(edid_info);
 
 extern int root_mountflags;
 
-char command_line[COMMAND_LINE_SIZE];
+char __initdata command_line[COMMAND_LINE_SIZE];
 
 struct resource standard_io_resources[] = {
        { .name = "dma1", .start = 0x00, .end = 0x1f,
@@ -343,7 +343,7 @@ static void discover_ebda(void)
 
 void __init setup_arch(char **cmdline_p)
 {
-       printk(KERN_INFO "Command line: %s\n", saved_command_line);
+       printk(KERN_INFO "Command line: %s\n", boot_command_line);
 
        ROOT_DEV = old_decode_dev(ORIG_ROOT_DEV);
        screen_info = SCREEN_INFO;
@@ -373,7 +373,7 @@ void __init setup_arch(char **cmdline_p)
 
        early_identify_cpu(&boot_cpu_data);
 
-       strlcpy(command_line, saved_command_line, COMMAND_LINE_SIZE);
+       strlcpy(command_line, boot_command_line, COMMAND_LINE_SIZE);
        *cmdline_p = command_line;
 
        parse_early_param();
index b829f7b534be8d856cea11e8545339912f914b7b..7b1c3ad155fd6c3cb219555c832a9b4211efe66a 100644 (file)
@@ -31,7 +31,7 @@ extern char x86_boot_params[BOOT_PARAM_SIZE];
 #define EDD_MBR_SIG_NR (*(unsigned char *) (PARAM+EDD_MBR_SIG_NR_BUF))
 #define EDD_MBR_SIGNATURE ((unsigned int *) (PARAM+EDD_MBR_SIG_BUF))
 #define EDD_BUF     ((struct edd_info *) (PARAM+EDDBUF))
-#define COMMAND_LINE saved_command_line
+#define COMMAND_LINE boot_command_line
 
 #define RAMDISK_IMAGE_START_MASK       0x07FF
 #define RAMDISK_PROMPT_FLAG            0x8000