diff options
author | Alon Bar-Lev <alon.barlev@gmail.com> | 2007-02-12 03:54:25 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-02-12 12:48:39 -0500 |
commit | adf48856db47f4f0f661f2f4b7004890408135cf (patch) | |
tree | 04bc4bf2ffb77458aa9945829b3eeb616334f2b3 | |
parent | 712f77b5659208b43c925e1b28c4f44891c4d94f (diff) |
[PATCH] Dynamic kernel command-line: x86_64
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>
-rw-r--r-- | arch/x86_64/kernel/head64.c | 4 | ||||
-rw-r--r-- | arch/x86_64/kernel/setup.c | 6 | ||||
-rw-r--r-- | include/asm-x86_64/bootsetup.h | 2 |
3 files changed, 6 insertions, 6 deletions
diff --git a/arch/x86_64/kernel/head64.c b/arch/x86_64/kernel/head64.c index cc230b93cd1c..be4bfb43d6dd 100644 --- a/arch/x86_64/kernel/head64.c +++ b/arch/x86_64/kernel/head64.c | |||
@@ -34,7 +34,7 @@ static void __init clear_bss(void) | |||
34 | #define OLD_CL_BASE_ADDR 0x90000 | 34 | #define OLD_CL_BASE_ADDR 0x90000 |
35 | #define OLD_CL_OFFSET 0x90022 | 35 | #define OLD_CL_OFFSET 0x90022 |
36 | 36 | ||
37 | extern char saved_command_line[]; | 37 | extern char __initdata boot_command_line[]; |
38 | 38 | ||
39 | static void __init copy_bootdata(char *real_mode_data) | 39 | static void __init copy_bootdata(char *real_mode_data) |
40 | { | 40 | { |
@@ -50,7 +50,7 @@ static void __init copy_bootdata(char *real_mode_data) | |||
50 | new_data = OLD_CL_BASE_ADDR + * (u16 *) OLD_CL_OFFSET; | 50 | new_data = OLD_CL_BASE_ADDR + * (u16 *) OLD_CL_OFFSET; |
51 | } | 51 | } |
52 | command_line = (char *) ((u64)(new_data)); | 52 | command_line = (char *) ((u64)(new_data)); |
53 | memcpy(saved_command_line, command_line, COMMAND_LINE_SIZE); | 53 | memcpy(boot_command_line, command_line, COMMAND_LINE_SIZE); |
54 | } | 54 | } |
55 | 55 | ||
56 | void __init x86_64_start_kernel(char * real_mode_data) | 56 | void __init x86_64_start_kernel(char * real_mode_data) |
diff --git a/arch/x86_64/kernel/setup.c b/arch/x86_64/kernel/setup.c index af425a8049fb..60477244d1a3 100644 --- a/arch/x86_64/kernel/setup.c +++ b/arch/x86_64/kernel/setup.c | |||
@@ -100,7 +100,7 @@ EXPORT_SYMBOL_GPL(edid_info); | |||
100 | 100 | ||
101 | extern int root_mountflags; | 101 | extern int root_mountflags; |
102 | 102 | ||
103 | char command_line[COMMAND_LINE_SIZE]; | 103 | char __initdata command_line[COMMAND_LINE_SIZE]; |
104 | 104 | ||
105 | struct resource standard_io_resources[] = { | 105 | struct resource standard_io_resources[] = { |
106 | { .name = "dma1", .start = 0x00, .end = 0x1f, | 106 | { .name = "dma1", .start = 0x00, .end = 0x1f, |
@@ -343,7 +343,7 @@ static void discover_ebda(void) | |||
343 | 343 | ||
344 | void __init setup_arch(char **cmdline_p) | 344 | void __init setup_arch(char **cmdline_p) |
345 | { | 345 | { |
346 | printk(KERN_INFO "Command line: %s\n", saved_command_line); | 346 | printk(KERN_INFO "Command line: %s\n", boot_command_line); |
347 | 347 | ||
348 | ROOT_DEV = old_decode_dev(ORIG_ROOT_DEV); | 348 | ROOT_DEV = old_decode_dev(ORIG_ROOT_DEV); |
349 | screen_info = SCREEN_INFO; | 349 | screen_info = SCREEN_INFO; |
@@ -373,7 +373,7 @@ void __init setup_arch(char **cmdline_p) | |||
373 | 373 | ||
374 | early_identify_cpu(&boot_cpu_data); | 374 | early_identify_cpu(&boot_cpu_data); |
375 | 375 | ||
376 | strlcpy(command_line, saved_command_line, COMMAND_LINE_SIZE); | 376 | strlcpy(command_line, boot_command_line, COMMAND_LINE_SIZE); |
377 | *cmdline_p = command_line; | 377 | *cmdline_p = command_line; |
378 | 378 | ||
379 | parse_early_param(); | 379 | parse_early_param(); |
diff --git a/include/asm-x86_64/bootsetup.h b/include/asm-x86_64/bootsetup.h index b829f7b534be..7b1c3ad155fd 100644 --- a/include/asm-x86_64/bootsetup.h +++ b/include/asm-x86_64/bootsetup.h | |||
@@ -31,7 +31,7 @@ extern char x86_boot_params[BOOT_PARAM_SIZE]; | |||
31 | #define EDD_MBR_SIG_NR (*(unsigned char *) (PARAM+EDD_MBR_SIG_NR_BUF)) | 31 | #define EDD_MBR_SIG_NR (*(unsigned char *) (PARAM+EDD_MBR_SIG_NR_BUF)) |
32 | #define EDD_MBR_SIGNATURE ((unsigned int *) (PARAM+EDD_MBR_SIG_BUF)) | 32 | #define EDD_MBR_SIGNATURE ((unsigned int *) (PARAM+EDD_MBR_SIG_BUF)) |
33 | #define EDD_BUF ((struct edd_info *) (PARAM+EDDBUF)) | 33 | #define EDD_BUF ((struct edd_info *) (PARAM+EDDBUF)) |
34 | #define COMMAND_LINE saved_command_line | 34 | #define COMMAND_LINE boot_command_line |
35 | 35 | ||
36 | #define RAMDISK_IMAGE_START_MASK 0x07FF | 36 | #define RAMDISK_IMAGE_START_MASK 0x07FF |
37 | #define RAMDISK_PROMPT_FLAG 0x8000 | 37 | #define RAMDISK_PROMPT_FLAG 0x8000 |