linux-arch.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/26] Dynamic kernel command-line
@ 2006-12-02 10:47 Alon Bar-Lev
  2006-12-02 10:48 ` [PATCH 01/26] Dynamic kernel command-line - common Alon Bar-Lev
                   ` (25 more replies)
  0 siblings, 26 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:47 UTC (permalink / raw)
  To: linux-arch, linux-kernel


Hello,

This is take 3 of submission, I submit this patch
once in a few monthes to collect some more signatures :)
Until now, I got three:
- avr32
- sh
- sh64

I know this is not one of major priorities, but it
should be simple enough to be reviewed and included.

I will also be happy to get a REJECT response, so I
stop trying to get it included. Any suggestions of
how to push this farward will also be appreciated.

Current implementation stores a static command-line
buffer allocated to COMMAND_LINE_SIZE size. Most
architectures stores two copies of this buffer, one
for future reference and one for parameter parsing.

Current kernel command-line size for most architecture
is much too small for module parameters, video settings,
initramfs paramters and much more. The problem is that
setting COMMAND_LINE_SIZE to a grater value, allocates
static buffers.

In order to allow a greater command-line size, these
buffers should be dynamically allocated or marked
as init disposable buffers, so unused memory can be
released.

This patch renames the static saved_command_line
variable into boot_command_line adding __initdata
attribute, so that it can be disposed after
initialization. This rename is required so applications
that use saved_command_line will not be affected
by this change.

It reintroduces saved_command_line as dynamically
allocated buffer to match the data in boot_command_line.

It also mark secondary command-line buffer as __initdata,
and copies it to dynamically allocated static_command_line
buffer components may hold reference to it after
initialization.

This patch is for linux-2.6.19 and is divided to
target each architecture. I could not check this in any
architecture so please forgive me if I got it wrong.

The per-architecture modification is very simple, use
boot_command_line in place of saved_command_line. The
common code is the change into dynamic command-line.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>

---


^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 01/26] Dynamic kernel command-line - common
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
@ 2006-12-02 10:48 ` Alon Bar-Lev
  2006-12-02 10:48 ` [PATCH 02/26] Dynamic kernel command-line - alpha Alon Bar-Lev
                   ` (24 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:48 UTC (permalink / raw)
  To: linux-arch, linux-kernel


1. Rename saved_command_line into boot_command_line, mark
   as init disposable.
2. Add dynamic allocated saved_command_line.
3. Add dynamic allocated static_command_line.
4. During startup copy:
   boot_command_line into saved_command_line.
   arch command_line into static_command_line.
5. Parse static_command_line and not
   arch command_line, so arch command_line may
   be freed.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>

---

diff -urNp linux-2.6.19.org/include/linux/init.h linux-2.6.19/include/linux/init.h
--- linux-2.6.19.org/include/linux/init.h	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/include/linux/init.h	2006-12-02 11:31:32.000000000 +0200
@@ -67,7 +67,8 @@ extern initcall_t __con_initcall_start[]
 extern initcall_t __security_initcall_start[], __security_initcall_end[];
 
 /* Defined in init/main.c */
-extern char saved_command_line[];
+extern char __initdata boot_command_line[];
+extern char *saved_command_line;
 extern unsigned int reset_devices;
 
 /* used by init/main.c */
@@ -163,7 +164,7 @@ struct obs_kernel_param {
 #define early_param(str, fn)					\
 	__setup_param(str, fn, fn, 1)
 
-/* Relies on saved_command_line being set */
+/* Relies on boot_command_line being set */
 void __init parse_early_param(void);
 #endif /* __ASSEMBLY__ */
 
diff -urNp linux-2.6.19.org/init/main.c linux-2.6.19/init/main.c
--- linux-2.6.19.org/init/main.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/init/main.c	2006-12-02 11:33:35.000000000 +0200
@@ -116,8 +116,12 @@ extern void time_init(void);
 void (*late_time_init)(void);
 extern void softirq_init(void);
 
-/* Untouched command line (eg. for /proc) saved by arch-specific code. */
-char saved_command_line[COMMAND_LINE_SIZE];
+/* Untouched command line saved by arch-specific code. */
+char __initdata boot_command_line[COMMAND_LINE_SIZE];
+/* Untouched saved command line (eg. for /proc) */
+char *saved_command_line;
+/* Command line for parameter parsing */
+static char *static_command_line;
 
 static char *execute_command;
 static char *ramdisk_execute_command;
@@ -400,6 +404,20 @@ static void __init smp_init(void)
 #endif
 
 /*
+ * We need to store the untouched command line for future reference.
+ * We also need to store the touched command line since the parameter
+ * parsing is performed in place, and we should allow a component to
+ * store reference of name/value for future reference.
+ */
+static void __init setup_command_line(char *command_line)
+{
+	saved_command_line = alloc_bootmem(strlen (boot_command_line)+1);
+	static_command_line = alloc_bootmem(strlen (command_line)+1);
+	strcpy (saved_command_line, boot_command_line);
+	strcpy (static_command_line, command_line);
+}
+
+/*
  * We need to finalize in a non-__init function or else race conditions
  * between the root thread and the init thread may cause start_kernel to
  * be reaped by free_initmem before the root thread has proceeded to
@@ -453,7 +471,7 @@ void __init parse_early_param(void)
 		return;
 
 	/* All fall through to do_early_param. */
-	strlcpy(tmp_cmdline, saved_command_line, COMMAND_LINE_SIZE);
+	strlcpy(tmp_cmdline, boot_command_line, COMMAND_LINE_SIZE);
 	parse_args("early options", tmp_cmdline, NULL, 0, do_early_param);
 	done = 1;
 }
@@ -503,6 +521,7 @@ asmlinkage void __init start_kernel(void
 	printk(KERN_NOTICE);
 	printk(linux_banner);
 	setup_arch(&command_line);
+	setup_command_line(command_line);
 	unwind_setup();
 	setup_per_cpu_areas();
 	smp_prepare_boot_cpu();	/* arch-specific boot-cpu hooks */
@@ -520,9 +539,9 @@ asmlinkage void __init start_kernel(void
 	preempt_disable();
 	build_all_zonelists();
 	page_alloc_init();
-	printk(KERN_NOTICE "Kernel command line: %s\n", saved_command_line);
+	printk(KERN_NOTICE "Kernel command line: %s\n", boot_command_line);
 	parse_early_param();
-	parse_args("Booting kernel", command_line, __start___param,
+	parse_args("Booting kernel", static_command_line, __start___param,
 		   __stop___param - __start___param,
 		   &unknown_bootoption);
 	sort_main_extable();

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 02/26] Dynamic kernel command-line - alpha
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
  2006-12-02 10:48 ` [PATCH 01/26] Dynamic kernel command-line - common Alon Bar-Lev
@ 2006-12-02 10:48 ` Alon Bar-Lev
  2006-12-02 10:49 ` [PATCH 03/26] Dynamic kernel command-line - arm Alon Bar-Lev
                   ` (23 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:48 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/alpha/kernel/setup.c linux-2.6.19/arch/alpha/kernel/setup.c
--- linux-2.6.19.org/arch/alpha/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/alpha/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -122,7 +122,7 @@ static void get_sysnames(unsigned long, 
 			 char **, char **);
 static void determine_cpu_caches (unsigned int);
 
-static char command_line[COMMAND_LINE_SIZE];
+static char __initdata command_line[COMMAND_LINE_SIZE];
 
 /*
  * The format of "screen_info" is strange, and due to early
@@ -547,7 +547,7 @@ setup_arch(char **cmdline_p)
 	} else {
 		strlcpy(command_line, COMMAND_LINE, sizeof command_line);
 	}
-	strcpy(saved_command_line, command_line);
+	strcpy(boot_command_line, command_line);
 	*cmdline_p = command_line;
 
 	/* 
@@ -589,7 +589,7 @@ setup_arch(char **cmdline_p)
 	}
 
 	/* Replace the command line, now that we've killed it with strsep.  */
-	strcpy(command_line, saved_command_line);
+	strcpy(command_line, boot_command_line);
 
 	/* If we want SRM console printk echoing early, do it now. */
 	if (alpha_using_srm && srmcons_output) {

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 03/26] Dynamic kernel command-line - arm
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
  2006-12-02 10:48 ` [PATCH 01/26] Dynamic kernel command-line - common Alon Bar-Lev
  2006-12-02 10:48 ` [PATCH 02/26] Dynamic kernel command-line - alpha Alon Bar-Lev
@ 2006-12-02 10:49 ` Alon Bar-Lev
  2006-12-02 10:49 ` [PATCH 04/26] Dynamic kernel command-line - arm26 Alon Bar-Lev
                   ` (22 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:49 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/arm/kernel/setup.c linux-2.6.19/arch/arm/kernel/setup.c
--- linux-2.6.19.org/arch/arm/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/arm/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -106,7 +106,7 @@ unsigned long phys_initrd_size __initdat
 static struct meminfo meminfo __initdata = { 0, };
 static const char *cpu_name;
 static const char *machine_name;
-static char command_line[COMMAND_LINE_SIZE];
+static char __initdata command_line[COMMAND_LINE_SIZE];
 
 static char default_command_line[COMMAND_LINE_SIZE] __initdata = CONFIG_CMDLINE;
 static union { char c[4]; unsigned long l; } endian_test __initdata = { { 'l', '?', '?', 'b' } };
@@ -806,8 +806,8 @@ void __init setup_arch(char **cmdline_p)
 	init_mm.end_data   = (unsigned long) &_edata;
 	init_mm.brk	   = (unsigned long) &_end;
 
-	memcpy(saved_command_line, from, COMMAND_LINE_SIZE);
-	saved_command_line[COMMAND_LINE_SIZE-1] = '\0';
+	memcpy(boot_command_line, from, COMMAND_LINE_SIZE);
+	boot_command_line[COMMAND_LINE_SIZE-1] = '\0';
 	parse_cmdline(cmdline_p, from);
 	paging_init(&meminfo, mdesc);
 	request_standard_resources(&meminfo, mdesc);

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 04/26] Dynamic kernel command-line - arm26
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (2 preceding siblings ...)
  2006-12-02 10:49 ` [PATCH 03/26] Dynamic kernel command-line - arm Alon Bar-Lev
@ 2006-12-02 10:49 ` Alon Bar-Lev
  2006-12-02 10:49 ` [PATCH 05/26] Dynamic kernel command-line - avr32 Alon Bar-Lev
                   ` (21 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:49 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/arm26/kernel/setup.c linux-2.6.19/arch/arm26/kernel/setup.c
--- linux-2.6.19.org/arch/arm26/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/arm26/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -80,7 +80,7 @@ unsigned long phys_initrd_size __initdat
 static struct meminfo meminfo __initdata = { 0, };
 static struct proc_info_item proc_info;
 static const char *machine_name;
-static char command_line[COMMAND_LINE_SIZE];
+static char __initdata command_line[COMMAND_LINE_SIZE];
 
 static char default_command_line[COMMAND_LINE_SIZE] __initdata = CONFIG_CMDLINE;
 
@@ -492,8 +492,8 @@ void __init setup_arch(char **cmdline_p)
 	init_mm.end_data   = (unsigned long) &_edata;
 	init_mm.brk	   = (unsigned long) &_end;
 
-	memcpy(saved_command_line, from, COMMAND_LINE_SIZE);
-	saved_command_line[COMMAND_LINE_SIZE-1] = '\0';
+	memcpy(boot_command_line, from, COMMAND_LINE_SIZE);
+	boot_command_line[COMMAND_LINE_SIZE-1] = '\0';
 	parse_cmdline(&meminfo, cmdline_p, from);
 	bootmem_init(&meminfo);
 	paging_init(&meminfo);

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 05/26] Dynamic kernel command-line - avr32
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (3 preceding siblings ...)
  2006-12-02 10:49 ` [PATCH 04/26] Dynamic kernel command-line - arm26 Alon Bar-Lev
@ 2006-12-02 10:49 ` Alon Bar-Lev
  2006-12-02 10:50 ` [PATCH 06/26] Dynamic kernel command-line - cris Alon Bar-Lev
                   ` (20 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:49 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>
Acked-by: Haavard Skinnemoen <hskinnemoen@atmel.com>

---

diff -urNp linux-2.6.19.org/arch/avr32/kernel/setup.c linux-2.6.19/arch/avr32/kernel/setup.c
--- linux-2.6.19.org/arch/avr32/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/avr32/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -44,7 +44,7 @@ struct avr32_cpuinfo boot_cpu_data = {
 };
 EXPORT_SYMBOL(boot_cpu_data);
 
-static char command_line[COMMAND_LINE_SIZE];
+static char __initdata command_line[COMMAND_LINE_SIZE];
 
 /*
  * Should be more than enough, but if you have a _really_ complex
@@ -202,7 +202,7 @@ __tagtable(ATAG_MEM, parse_tag_mem);
 
 static int __init parse_tag_cmdline(struct tag *tag)
 {
-	strlcpy(saved_command_line, tag->u.cmdline.cmdline, COMMAND_LINE_SIZE);
+	strlcpy(boot_command_line, tag->u.cmdline.cmdline, COMMAND_LINE_SIZE);
 	return 0;
 }
 __tagtable(ATAG_CMDLINE, parse_tag_cmdline);
@@ -318,7 +318,7 @@ void __init setup_arch (char **cmdline_p
 	init_mm.end_data = (unsigned long) &_edata;
 	init_mm.brk = (unsigned long) &_end;
 
-	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();
 

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 06/26] Dynamic kernel command-line - cris
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (4 preceding siblings ...)
  2006-12-02 10:49 ` [PATCH 05/26] Dynamic kernel command-line - avr32 Alon Bar-Lev
@ 2006-12-02 10:50 ` Alon Bar-Lev
  2006-12-02 10:50 ` [PATCH 07/26] Dynamic kernel command-line - frv Alon Bar-Lev
                   ` (19 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:50 UTC (permalink / raw)
  To: linux-arch, linux-kernel


1. Rename saved_command_line into boot_command_line.
2. Set cris_command_line as __initdata.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>

---

diff -urNp linux-2.6.19.org/arch/cris/kernel/setup.c linux-2.6.19/arch/cris/kernel/setup.c
--- linux-2.6.19.org/arch/cris/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/cris/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -29,7 +29,7 @@ struct screen_info screen_info;
 extern int root_mountflags;
 extern char _etext, _edata, _end;
 
-char cris_command_line[COMMAND_LINE_SIZE] = { 0, };
+char __initdata cris_command_line[COMMAND_LINE_SIZE] = { 0, };
 
 extern const unsigned long text_start, edata; /* set by the linker script */
 extern unsigned long dram_start, dram_end;
@@ -153,8 +153,8 @@ setup_arch(char **cmdline_p)
 #endif
 
 	/* Save command line for future references. */
-	memcpy(saved_command_line, cris_command_line, COMMAND_LINE_SIZE);
-	saved_command_line[COMMAND_LINE_SIZE - 1] = '\0';
+	memcpy(boot_command_line, cris_command_line, COMMAND_LINE_SIZE);
+	boot_command_line[COMMAND_LINE_SIZE - 1] = '\0';
 
 	/* give credit for the CRIS port */
 	show_etrax_copyright();

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 07/26] Dynamic kernel command-line - frv
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (5 preceding siblings ...)
  2006-12-02 10:50 ` [PATCH 06/26] Dynamic kernel command-line - cris Alon Bar-Lev
@ 2006-12-02 10:50 ` Alon Bar-Lev
  2006-12-02 10:50 ` [PATCH 08/26] Dynamic kernel command-line - h8300 Alon Bar-Lev
                   ` (18 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:50 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/frv/kernel/setup.c linux-2.6.19/arch/frv/kernel/setup.c
--- linux-2.6.19.org/arch/frv/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/frv/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -110,7 +110,7 @@ unsigned long __initdata num_mappedpages
 
 struct cpuinfo_frv __nongprelbss boot_cpu_data;
 
-char command_line[COMMAND_LINE_SIZE];
+char __initdata command_line[COMMAND_LINE_SIZE];
 char __initdata redboot_command_line[COMMAND_LINE_SIZE];
 
 #ifdef CONFIG_PM
@@ -762,7 +762,7 @@ void __init setup_arch(char **cmdline_p)
 	printk("uClinux FR-V port done by Red Hat Inc <dhowells@redhat.com>\n");
 #endif
 
-	memcpy(saved_command_line, redboot_command_line, COMMAND_LINE_SIZE);
+	memcpy(boot_command_line, redboot_command_line, COMMAND_LINE_SIZE);
 
 	determine_cpu();
 	determine_clocks(1);
@@ -803,7 +803,7 @@ void __init setup_arch(char **cmdline_p)
 #endif
 
 	/* deal with the command line - RedBoot may have passed one to the kernel */
-	memcpy(command_line, saved_command_line, sizeof(command_line));
+	memcpy(command_line, boot_command_line, sizeof(command_line));
 	*cmdline_p = &command_line[0];
 	parse_cmdline_early(command_line);
 

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 08/26] Dynamic kernel command-line - h8300
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (6 preceding siblings ...)
  2006-12-02 10:50 ` [PATCH 07/26] Dynamic kernel command-line - frv Alon Bar-Lev
@ 2006-12-02 10:50 ` Alon Bar-Lev
  2006-12-02 10:51 ` [PATCH 09/26] Dynamic kernel command-line - i386 Alon Bar-Lev
                   ` (17 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:50 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/h8300/kernel/setup.c linux-2.6.19/arch/h8300/kernel/setup.c
--- linux-2.6.19.org/arch/h8300/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/h8300/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -54,7 +54,7 @@ unsigned long rom_length;
 unsigned long memory_start;
 unsigned long memory_end;
 
-char command_line[COMMAND_LINE_SIZE];
+char __initdata command_line[COMMAND_LINE_SIZE];
 
 extern int _stext, _etext, _sdata, _edata, _sbss, _ebss, _end;
 extern int _ramstart, _ramend;
@@ -154,8 +154,8 @@ void __init setup_arch(char **cmdline_p)
 #endif
 	/* Keep a copy of command line */
 	*cmdline_p = &command_line[0];
-	memcpy(saved_command_line, command_line, COMMAND_LINE_SIZE);
-	saved_command_line[COMMAND_LINE_SIZE-1] = 0;
+	memcpy(boot_command_line, command_line, COMMAND_LINE_SIZE);
+	boot_command_line[COMMAND_LINE_SIZE-1] = 0;
 
 #ifdef DEBUG
 	if (strlen(*cmdline_p)) 

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 09/26] Dynamic kernel command-line - i386
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (7 preceding siblings ...)
  2006-12-02 10:50 ` [PATCH 08/26] Dynamic kernel command-line - h8300 Alon Bar-Lev
@ 2006-12-02 10:51 ` Alon Bar-Lev
  2006-12-02 10:51 ` [PATCH 10/26] Dynamic kernel command-line - ia64 Alon Bar-Lev
                   ` (16 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:51 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/i386/kernel/head.S linux-2.6.19/arch/i386/kernel/head.S
--- linux-2.6.19.org/arch/i386/kernel/head.S	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/i386/kernel/head.S	2006-12-02 11:31:32.000000000 +0200
@@ -97,7 +97,7 @@ ENTRY(startup_32)
 	movzwl OLD_CL_OFFSET,%esi
 	addl $(OLD_CL_BASE_ADDR),%esi
 2:
-	movl $(saved_command_line - __PAGE_OFFSET),%edi
+	movl $(boot_command_line - __PAGE_OFFSET),%edi
 	movl $(COMMAND_LINE_SIZE/4),%ecx
 	rep
 	movsl
diff -urNp linux-2.6.19.org/arch/i386/kernel/setup.c linux-2.6.19/arch/i386/kernel/setup.c
--- linux-2.6.19.org/arch/i386/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/i386/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -145,7 +145,7 @@ unsigned long saved_videomode;
 #define RAMDISK_PROMPT_FLAG		0x8000
 #define RAMDISK_LOAD_FLAG		0x4000	
 
-static char command_line[COMMAND_LINE_SIZE];
+static char __initdata command_line[COMMAND_LINE_SIZE];
 
 unsigned char __initdata boot_params[PARAM_SIZE];
 
@@ -1405,7 +1405,7 @@ void __init setup_arch(char **cmdline_p)
 		print_memory_map("user");
 	}
 
-	strlcpy(command_line, saved_command_line, COMMAND_LINE_SIZE);
+	strlcpy(command_line, boot_command_line, COMMAND_LINE_SIZE);
 	*cmdline_p = command_line;
 
 	max_low_pfn = setup_memory();

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 10/26] Dynamic kernel command-line - ia64
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (8 preceding siblings ...)
  2006-12-02 10:51 ` [PATCH 09/26] Dynamic kernel command-line - i386 Alon Bar-Lev
@ 2006-12-02 10:51 ` Alon Bar-Lev
  2006-12-02 10:52 ` [PATCH 11/26] Dynamic kernel command-line - m32r Alon Bar-Lev
                   ` (15 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:51 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/ia64/kernel/efi.c linux-2.6.19/arch/ia64/kernel/efi.c
--- linux-2.6.19.org/arch/ia64/kernel/efi.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/ia64/kernel/efi.c	2006-12-02 11:31:32.000000000 +0200
@@ -412,11 +412,11 @@ efi_init (void)
 	efi_char16_t *c16;
 	u64 efi_desc_size;
 	char *cp, vendor[100] = "unknown";
-	extern char saved_command_line[];
+	extern char __initdata boot_command_line[];
 	int i;
 
 	/* it's too early to be able to use the standard kernel command line support... */
-	for (cp = saved_command_line; *cp; ) {
+	for (cp = boot_command_line; *cp; ) {
 		if (memcmp(cp, "mem=", 4) == 0) {
 			mem_limit = memparse(cp + 4, &cp);
 		} else if (memcmp(cp, "max_addr=", 9) == 0) {
diff -urNp linux-2.6.19.org/arch/ia64/kernel/sal.c linux-2.6.19/arch/ia64/kernel/sal.c
--- linux-2.6.19.org/arch/ia64/kernel/sal.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/ia64/kernel/sal.c	2006-12-02 11:31:32.000000000 +0200
@@ -194,9 +194,9 @@ static void __init
 chk_nointroute_opt(void)
 {
 	char *cp;
-	extern char saved_command_line[];
+	extern char __initdata boot_command_line[];
 
-	for (cp = saved_command_line; *cp; ) {
+	for (cp = boot_command_line; *cp; ) {
 		if (memcmp(cp, "nointroute", 10) == 0) {
 			no_int_routing = 1;
 			printk ("no_int_routing on\n");
diff -urNp linux-2.6.19.org/arch/ia64/kernel/setup.c linux-2.6.19/arch/ia64/kernel/setup.c
--- linux-2.6.19.org/arch/ia64/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/ia64/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -404,7 +404,7 @@ setup_arch (char **cmdline_p)
 	ia64_patch_vtop((u64) __start___vtop_patchlist, (u64) __end___vtop_patchlist);
 
 	*cmdline_p = __va(ia64_boot_param->command_line);
-	strlcpy(saved_command_line, *cmdline_p, COMMAND_LINE_SIZE);
+	strlcpy(boot_command_line, *cmdline_p, COMMAND_LINE_SIZE);
 
 	efi_init();
 	io_port_init();

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 11/26] Dynamic kernel command-line - m32r
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (9 preceding siblings ...)
  2006-12-02 10:51 ` [PATCH 10/26] Dynamic kernel command-line - ia64 Alon Bar-Lev
@ 2006-12-02 10:52 ` Alon Bar-Lev
  2006-12-02 10:52 ` [PATCH 12/26] Dynamic kernel command-line - m68k Alon Bar-Lev
                   ` (14 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:52 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/m32r/kernel/setup.c linux-2.6.19/arch/m32r/kernel/setup.c
--- linux-2.6.19.org/arch/m32r/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/m32r/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -64,7 +64,7 @@ struct screen_info screen_info = {
 
 extern int root_mountflags;
 
-static char command_line[COMMAND_LINE_SIZE];
+static char __initdata command_line[COMMAND_LINE_SIZE];
 
 static struct resource data_resource = {
 	.name   = "Kernel data",
@@ -95,8 +95,8 @@ static __inline__ void parse_mem_cmdline
 	int usermem = 0;
 
 	/* Save unparsed command line copy for /proc/cmdline */
-	memcpy(saved_command_line, COMMAND_LINE, COMMAND_LINE_SIZE);
-	saved_command_line[COMMAND_LINE_SIZE-1] = '\0';
+	memcpy(boot_command_line, COMMAND_LINE, COMMAND_LINE_SIZE);
+	boot_command_line[COMMAND_LINE_SIZE-1] = '\0';
 
 	memory_start = (unsigned long)CONFIG_MEMORY_START+PAGE_OFFSET;
 	memory_end = memory_start+(unsigned long)CONFIG_MEMORY_SIZE;

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 12/26] Dynamic kernel command-line - m68k
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (10 preceding siblings ...)
  2006-12-02 10:52 ` [PATCH 11/26] Dynamic kernel command-line - m32r Alon Bar-Lev
@ 2006-12-02 10:52 ` Alon Bar-Lev
  2006-12-02 10:53 ` [PATCH 13/26] Dynamic kernel command-line - m68knommu Alon Bar-Lev
                   ` (13 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:52 UTC (permalink / raw)
  To: linux-arch, linux-kernel


Rename saved_command_line into boot_command_line.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>

---

diff -urNp linux-2.6.19.org/arch/m68k/kernel/setup.c linux-2.6.19/arch/m68k/kernel/setup.c
--- linux-2.6.19.org/arch/m68k/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/m68k/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -256,7 +256,7 @@ void __init setup_arch(char **cmdline_p)
 	init_mm.brk = (unsigned long) &_end;
 
 	*cmdline_p = m68k_command_line;
-	memcpy(saved_command_line, *cmdline_p, CL_SIZE);
+	memcpy(boot_command_line, *cmdline_p, CL_SIZE);
 
 	/* Parse the command line for arch-specific options.
 	 * For the m68k, this is currently only "debug=xxx" to enable printing

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 13/26] Dynamic kernel command-line - m68knommu
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (11 preceding siblings ...)
  2006-12-02 10:52 ` [PATCH 12/26] Dynamic kernel command-line - m68k Alon Bar-Lev
@ 2006-12-02 10:53 ` Alon Bar-Lev
  2006-12-02 10:53 ` [PATCH 14/26] Dynamic kernel command-line - mips Alon Bar-Lev
                   ` (12 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:53 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/m68knommu/kernel/setup.c linux-2.6.19/arch/m68knommu/kernel/setup.c
--- linux-2.6.19.org/arch/m68knommu/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/m68knommu/kernel/setup.c	2006-12-02 11:31:32.000000000 +0200
@@ -47,7 +47,7 @@ unsigned long memory_end;
 EXPORT_SYMBOL(memory_start);
 EXPORT_SYMBOL(memory_end);
 
-char command_line[COMMAND_LINE_SIZE];
+char __initdata command_line[COMMAND_LINE_SIZE];
 
 /* setup some dummy routines */
 static void dummy_waitbut(void)
@@ -234,8 +234,8 @@ void setup_arch(char **cmdline_p)
 
 	/* Keep a copy of command line */
 	*cmdline_p = &command_line[0];
-	memcpy(saved_command_line, command_line, COMMAND_LINE_SIZE);
-	saved_command_line[COMMAND_LINE_SIZE-1] = 0;
+	memcpy(boot_command_line, command_line, COMMAND_LINE_SIZE);
+	boot_command_line[COMMAND_LINE_SIZE-1] = 0;
 
 #ifdef DEBUG
 	if (strlen(*cmdline_p))

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 14/26] Dynamic kernel command-line - mips
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (12 preceding siblings ...)
  2006-12-02 10:53 ` [PATCH 13/26] Dynamic kernel command-line - m68knommu Alon Bar-Lev
@ 2006-12-02 10:53 ` Alon Bar-Lev
  2006-12-02 10:53 ` [PATCH 15/26] Dynamic kernel command-line - parisc Alon Bar-Lev
                   ` (11 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:53 UTC (permalink / raw)
  To: linux-arch, linux-kernel


Rename saved_command_line into boot_command_line.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>

---

diff -urNp linux-2.6.19.org/arch/mips/kernel/setup.c linux-2.6.19/arch/mips/kernel/setup.c
--- linux-2.6.19.org/arch/mips/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/mips/kernel/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -409,7 +409,7 @@ static void __init arch_mem_init(char **
 	print_memory_map();
 
 	strlcpy(command_line, arcs_cmdline, sizeof(command_line));
-	strlcpy(saved_command_line, command_line, COMMAND_LINE_SIZE);
+	strlcpy(boot_command_line, command_line, COMMAND_LINE_SIZE);
 
 	*cmdline_p = command_line;
 

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 15/26] Dynamic kernel command-line - parisc
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (13 preceding siblings ...)
  2006-12-02 10:53 ` [PATCH 14/26] Dynamic kernel command-line - mips Alon Bar-Lev
@ 2006-12-02 10:53 ` Alon Bar-Lev
  2006-12-02 10:54 ` [PATCH 16/26] Dynamic kernel command-line - powerpc Alon Bar-Lev
                   ` (10 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:53 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/parisc/kernel/setup.c linux-2.6.19/arch/parisc/kernel/setup.c
--- linux-2.6.19.org/arch/parisc/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/parisc/kernel/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -45,7 +45,7 @@
 #include <asm/io.h>
 #include <asm/setup.h>
 
-char	command_line[COMMAND_LINE_SIZE] __read_mostly;
+char	__initdata command_line[COMMAND_LINE_SIZE] __read_mostly;
 
 /* Intended for ccio/sba/cpu statistics under /proc/bus/{runway|gsc} */
 struct proc_dir_entry * proc_runway_root __read_mostly = NULL;
@@ -71,9 +71,9 @@ void __init setup_cmdline(char **cmdline
 	/* boot_args[0] is free-mem start, boot_args[1] is ptr to command line */
 	if (boot_args[0] < 64) {
 		/* called from hpux boot loader */
-		saved_command_line[0] = '\0';
+		boot_command_line[0] = '\0';
 	} else {
-		strcpy(saved_command_line, (char *)__va(boot_args[1]));
+		strcpy(boot_command_line, (char *)__va(boot_args[1]));
 
 #ifdef CONFIG_BLK_DEV_INITRD
 		if (boot_args[2] != 0) /* did palo pass us a ramdisk? */
@@ -84,7 +84,7 @@ void __init setup_cmdline(char **cmdline
 #endif
 	}
 
-	strcpy(command_line, saved_command_line);
+	strcpy(command_line, boot_command_line);
 	*cmdline_p = command_line;
 }
 
diff -urNp linux-2.6.19.org/arch/parisc/mm/init.c linux-2.6.19/arch/parisc/mm/init.c
--- linux-2.6.19.org/arch/parisc/mm/init.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/parisc/mm/init.c	2006-12-02 11:31:33.000000000 +0200
@@ -77,12 +77,12 @@ static void __init mem_limit_func(void)
 {
 	char *cp, *end;
 	unsigned long limit;
-	extern char saved_command_line[];
+	extern char __initdata boot_command_line[];
 
 	/* We need this before __setup() functions are called */
 
 	limit = MAX_MEM;
-	for (cp = saved_command_line; *cp; ) {
+	for (cp = boot_command_line; *cp; ) {
 		if (memcmp(cp, "mem=", 4) == 0) {
 			cp += 4;
 			limit = memparse(cp, &end);

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 16/26] Dynamic kernel command-line - powerpc
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (14 preceding siblings ...)
  2006-12-02 10:53 ` [PATCH 15/26] Dynamic kernel command-line - parisc Alon Bar-Lev
@ 2006-12-02 10:54 ` Alon Bar-Lev
  2006-12-02 10:54 ` [PATCH 17/26] Dynamic kernel command-line - ppc Alon Bar-Lev
                   ` (9 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:54 UTC (permalink / raw)
  To: linux-arch, linux-kernel


Rename saved_command_line into boot_command_line.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>

---

diff -urNp linux-2.6.19.org/arch/powerpc/kernel/legacy_serial.c linux-2.6.19/arch/powerpc/kernel/legacy_serial.c
--- linux-2.6.19.org/arch/powerpc/kernel/legacy_serial.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/powerpc/kernel/legacy_serial.c	2006-12-02 11:31:33.000000000 +0200
@@ -498,7 +498,7 @@ static int __init check_legacy_serial_co
 	DBG(" -> check_legacy_serial_console()\n");
 
 	/* The user has requested a console so this is already set up. */
-	if (strstr(saved_command_line, "console=")) {
+	if (strstr(boot_command_line, "console=")) {
 		DBG(" console was specified !\n");
 		return -EBUSY;
 	}
diff -urNp linux-2.6.19.org/arch/powerpc/kernel/prom.c linux-2.6.19/arch/powerpc/kernel/prom.c
--- linux-2.6.19.org/arch/powerpc/kernel/prom.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/powerpc/kernel/prom.c	2006-12-02 11:31:33.000000000 +0200
@@ -894,7 +894,7 @@ void __init early_init_devtree(void *par
 	of_scan_flat_dt(early_init_dt_scan_memory, NULL);
 
 	/* Save command line for /proc/cmdline and then parse parameters */
-	strlcpy(saved_command_line, cmd_line, COMMAND_LINE_SIZE);
+	strlcpy(boot_command_line, cmd_line, COMMAND_LINE_SIZE);
 	parse_early_param();
 
 	/* Reserve LMB regions used by kernel, initrd, dt, etc... */
diff -urNp linux-2.6.19.org/arch/powerpc/kernel/udbg.c linux-2.6.19/arch/powerpc/kernel/udbg.c
--- linux-2.6.19.org/arch/powerpc/kernel/udbg.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/powerpc/kernel/udbg.c	2006-12-02 11:31:33.000000000 +0200
@@ -146,7 +146,7 @@ void __init disable_early_printk(void)
 {
 	if (!early_console_initialized)
 		return;
-	if (strstr(saved_command_line, "udbg-immortal")) {
+	if (strstr(boot_command_line, "udbg-immortal")) {
 		printk(KERN_INFO "early console immortal !\n");
 		return;
 	}
diff -urNp linux-2.6.19.org/arch/powerpc/platforms/powermac/setup.c linux-2.6.19/arch/powerpc/platforms/powermac/setup.c
--- linux-2.6.19.org/arch/powerpc/platforms/powermac/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/powerpc/platforms/powermac/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -505,8 +505,8 @@ void note_bootable_part(dev_t dev, int p
 	if ((goodness <= current_root_goodness) &&
 	    ROOT_DEV != DEFAULT_ROOT_DEVICE)
 		return;
-	p = strstr(saved_command_line, "root=");
-	if (p != NULL && (p == saved_command_line || p[-1] == ' '))
+	p = strstr(boot_command_line, "root=");
+	if (p != NULL && (p == boot_command_line || p[-1] == ' '))
 		return;
 
 	if (!found_boot) {

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 17/26] Dynamic kernel command-line - ppc
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (15 preceding siblings ...)
  2006-12-02 10:54 ` [PATCH 16/26] Dynamic kernel command-line - powerpc Alon Bar-Lev
@ 2006-12-02 10:54 ` Alon Bar-Lev
  2006-12-02 10:55 ` [PATCH 18/26] Dynamic kernel command-line - s390 Alon Bar-Lev
                   ` (8 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:54 UTC (permalink / raw)
  To: linux-arch, linux-kernel


Rename saved_command_line into boot_command_line.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>

---

diff -urNp linux-2.6.19.org/arch/ppc/kernel/setup.c linux-2.6.19/arch/ppc/kernel/setup.c
--- linux-2.6.19.org/arch/ppc/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/ppc/kernel/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -543,7 +543,7 @@ void __init setup_arch(char **cmdline_p)
 	init_mm.brk = (unsigned long) klimit;
 
 	/* Save unparsed command line copy for /proc/cmdline */
-	strlcpy(saved_command_line, cmd_line, COMMAND_LINE_SIZE);
+	strlcpy(boot_command_line, cmd_line, COMMAND_LINE_SIZE);
 	*cmdline_p = cmd_line;
 
 	parse_early_param();
diff -urNp linux-2.6.19.org/arch/ppc/platforms/lopec.c linux-2.6.19/arch/ppc/platforms/lopec.c
--- linux-2.6.19.org/arch/ppc/platforms/lopec.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/ppc/platforms/lopec.c	2006-12-02 11:31:33.000000000 +0200
@@ -344,7 +344,7 @@ lopec_setup_arch(void)
 		 if (bootargs != NULL) {
 			 strcpy(cmd_line, bootargs);
 			 /* again.. */
-			 strcpy(saved_command_line, cmd_line);
+			 strcpy(boot_command_line, cmd_line);
 		}
 	}
 #endif
diff -urNp linux-2.6.19.org/arch/ppc/platforms/pplus.c linux-2.6.19/arch/ppc/platforms/pplus.c
--- linux-2.6.19.org/arch/ppc/platforms/pplus.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/ppc/platforms/pplus.c	2006-12-02 11:31:33.000000000 +0200
@@ -592,7 +592,7 @@ static void __init pplus_setup_arch(void
 		if (bootargs != NULL) {
 			strcpy(cmd_line, bootargs);
 			/* again.. */
-			strcpy(saved_command_line, cmd_line);
+			strcpy(boot_command_line, cmd_line);
 		}
 	}
 #endif
diff -urNp linux-2.6.19.org/arch/ppc/platforms/prep_setup.c linux-2.6.19/arch/ppc/platforms/prep_setup.c
--- linux-2.6.19.org/arch/ppc/platforms/prep_setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/ppc/platforms/prep_setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -634,7 +634,7 @@ static void __init prep_init_sound(void)
 	/*
 	 * Find a way to push these informations to the cs4232 driver
 	 * Give it out with printk, when not in cmd_line?
-	 * Append it to  cmd_line and saved_command_line?
+	 * Append it to  cmd_line and boot_command_line?
 	 * Format is cs4232=io,irq,dma,dma2
 	 */
 }
@@ -897,7 +897,7 @@ prep_setup_arch(void)
 		 if (bootargs != NULL) {
 			 strcpy(cmd_line, bootargs);
 			 /* again.. */
-			 strcpy(saved_command_line, cmd_line);
+			 strcpy(boot_command_line, cmd_line);
 		}
 	}

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 18/26] Dynamic kernel command-line - s390
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (16 preceding siblings ...)
  2006-12-02 10:54 ` [PATCH 17/26] Dynamic kernel command-line - ppc Alon Bar-Lev
@ 2006-12-02 10:55 ` Alon Bar-Lev
  2006-12-02 10:55 ` [PATCH 19/26] Dynamic kernel command-line - sh Alon Bar-Lev
                   ` (7 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:55 UTC (permalink / raw)
  To: linux-arch, linux-kernel


Rename saved_command_line into boot_command_line.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>

---

diff -urNp linux-2.6.19.org/arch/s390/kernel/setup.c linux-2.6.19/arch/s390/kernel/setup.c
--- linux-2.6.19.org/arch/s390/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/s390/kernel/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -633,7 +633,7 @@ setup_arch(char **cmdline_p)
 #endif /* CONFIG_64BIT */
 
 	/* Save unparsed command line copy for /proc/cmdline */
-	strlcpy(saved_command_line, COMMAND_LINE, COMMAND_LINE_SIZE);
+	strlcpy(boot_command_line, COMMAND_LINE, COMMAND_LINE_SIZE);
 
 	*cmdline_p = COMMAND_LINE;
 	*(*cmdline_p + COMMAND_LINE_SIZE - 1) = '\0';

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 19/26] Dynamic kernel command-line - sh
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (17 preceding siblings ...)
  2006-12-02 10:55 ` [PATCH 18/26] Dynamic kernel command-line - s390 Alon Bar-Lev
@ 2006-12-02 10:55 ` Alon Bar-Lev
  2006-12-02 10:55 ` [PATCH 20/26] Dynamic kernel command-line - sh64 Alon Bar-Lev
                   ` (6 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:55 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>
Acked-by: Paul Mundt <lethal@linux-sh.org>

---

diff -urNp linux-2.6.19.org/arch/sh/kernel/setup.c linux-2.6.19/arch/sh/kernel/setup.c
--- linux-2.6.19.org/arch/sh/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/sh/kernel/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -75,7 +75,7 @@ static struct sh_machine_vector* __init 
 #define RAMDISK_PROMPT_FLAG		0x8000
 #define RAMDISK_LOAD_FLAG		0x4000
 
-static char command_line[COMMAND_LINE_SIZE] = { 0, };
+static char __initdata command_line[COMMAND_LINE_SIZE] = { 0, };
 
 static struct resource code_resource = { .name = "Kernel code", };
 static struct resource data_resource = { .name = "Kernel data", };
@@ -91,8 +91,8 @@ static inline void parse_cmdline (char *
 	int len = 0;
 
 	/* Save unparsed command line copy for /proc/cmdline */
-	memcpy(saved_command_line, COMMAND_LINE, COMMAND_LINE_SIZE);
-	saved_command_line[COMMAND_LINE_SIZE-1] = '\0';
+	memcpy(boot_command_line, COMMAND_LINE, COMMAND_LINE_SIZE);
+	boot_command_line[COMMAND_LINE_SIZE-1] = '\0';
 
 	memory_start = (unsigned long)PAGE_OFFSET+__MEMORY_START;
 	memory_end = memory_start + __MEMORY_SIZE;

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 20/26] Dynamic kernel command-line - sh64
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (18 preceding siblings ...)
  2006-12-02 10:55 ` [PATCH 19/26] Dynamic kernel command-line - sh Alon Bar-Lev
@ 2006-12-02 10:55 ` Alon Bar-Lev
  2006-12-02 10:55 ` [PATCH 21/26] Dynamic kernel command-line - sparc Alon Bar-Lev
                   ` (5 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:55 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>
Acked-by: Paul Mundt <lethal@linux-sh.org>

---

diff -urNp linux-2.6.19.org/arch/sh64/kernel/setup.c linux-2.6.19/arch/sh64/kernel/setup.c
--- linux-2.6.19.org/arch/sh64/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/sh64/kernel/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -83,7 +83,7 @@ extern int sh64_tlb_init(void);
 #define RAMDISK_PROMPT_FLAG		0x8000
 #define RAMDISK_LOAD_FLAG		0x4000
 
-static char command_line[COMMAND_LINE_SIZE] = { 0, };
+static char __initdata command_line[COMMAND_LINE_SIZE] = { 0, };
 unsigned long long memory_start = CONFIG_MEMORY_START;
 unsigned long long memory_end = CONFIG_MEMORY_START + (CONFIG_MEMORY_SIZE_IN_MB * 1024 * 1024);
 
@@ -95,8 +95,8 @@ static inline void parse_mem_cmdline (ch
 	int len = 0;
 
 	/* Save unparsed command line copy for /proc/cmdline */
-	memcpy(saved_command_line, COMMAND_LINE, COMMAND_LINE_SIZE);
-	saved_command_line[COMMAND_LINE_SIZE-1] = '\0';
+	memcpy(boot_command_line, COMMAND_LINE, COMMAND_LINE_SIZE);
+	boot_command_line[COMMAND_LINE_SIZE-1] = '\0';
 
 	for (;;) {
 	  /*

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 21/26] Dynamic kernel command-line - sparc
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (19 preceding siblings ...)
  2006-12-02 10:55 ` [PATCH 20/26] Dynamic kernel command-line - sh64 Alon Bar-Lev
@ 2006-12-02 10:55 ` Alon Bar-Lev
  2006-12-02 10:56 ` [PATCH 22/26] Dynamic kernel command-line - sparc64 Alon Bar-Lev
                   ` (4 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:55 UTC (permalink / raw)
  To: linux-arch, linux-kernel


Rename saved_command_line into boot_command_line.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>

---

diff -urNp linux-2.6.19.org/arch/sparc/kernel/setup.c linux-2.6.19/arch/sparc/kernel/setup.c
--- linux-2.6.19.org/arch/sparc/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/sparc/kernel/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -246,7 +246,7 @@ void __init setup_arch(char **cmdline_p)
 
 	/* Initialize PROM console and command line. */
 	*cmdline_p = prom_getbootargs();
-	strcpy(saved_command_line, *cmdline_p);
+	strcpy(boot_command_line, *cmdline_p);
 
 	/* Set sparc_cpu_model */
 	sparc_cpu_model = sun_unknown;
diff -urNp linux-2.6.19.org/arch/sparc/kernel/sparc_ksyms.c linux-2.6.19/arch/sparc/kernel/sparc_ksyms.c
--- linux-2.6.19.org/arch/sparc/kernel/sparc_ksyms.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/sparc/kernel/sparc_ksyms.c	2006-12-02 11:31:33.000000000 +0200
@@ -237,7 +237,7 @@ EXPORT_SYMBOL(prom_getproplen);
 EXPORT_SYMBOL(prom_getproperty);
 EXPORT_SYMBOL(prom_node_has_property);
 EXPORT_SYMBOL(prom_setprop);
-EXPORT_SYMBOL(saved_command_line);
+EXPORT_SYMBOL(boot_command_line);
 EXPORT_SYMBOL(prom_apply_obio_ranges);
 EXPORT_SYMBOL(prom_feval);
 EXPORT_SYMBOL(prom_getbool);

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 22/26] Dynamic kernel command-line - sparc64
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (20 preceding siblings ...)
  2006-12-02 10:55 ` [PATCH 21/26] Dynamic kernel command-line - sparc Alon Bar-Lev
@ 2006-12-02 10:56 ` Alon Bar-Lev
  2006-12-02 10:56 ` [PATCH 23/26] Dynamic kernel command-line - um Alon Bar-Lev
                   ` (3 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:56 UTC (permalink / raw)
  To: linux-arch, linux-kernel


Rename saved_command_line into boot_command_line.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>

---

diff -urNp linux-2.6.19.org/arch/sparc64/kernel/setup.c linux-2.6.19/arch/sparc64/kernel/setup.c
--- linux-2.6.19.org/arch/sparc64/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/sparc64/kernel/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -315,7 +315,7 @@ void __init setup_arch(char **cmdline_p)
 {
 	/* Initialize PROM console and command line. */
 	*cmdline_p = prom_getbootargs();
-	strcpy(saved_command_line, *cmdline_p);
+	strcpy(boot_command_line, *cmdline_p);
 
 	if (tlb_type == hypervisor)
 		printk("ARCH: SUN4V\n");
diff -urNp linux-2.6.19.org/arch/sparc64/kernel/sparc64_ksyms.c linux-2.6.19/arch/sparc64/kernel/sparc64_ksyms.c
--- linux-2.6.19.org/arch/sparc64/kernel/sparc64_ksyms.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/sparc64/kernel/sparc64_ksyms.c	2006-12-02 11:31:33.000000000 +0200
@@ -253,7 +253,7 @@ EXPORT_SYMBOL(prom_getproplen);
 EXPORT_SYMBOL(prom_getproperty);
 EXPORT_SYMBOL(prom_node_has_property);
 EXPORT_SYMBOL(prom_setprop);
-EXPORT_SYMBOL(saved_command_line);
+EXPORT_SYMBOL(boot_command_line);
 EXPORT_SYMBOL(prom_finddevice);
 EXPORT_SYMBOL(prom_feval);
 EXPORT_SYMBOL(prom_getbool);

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 23/26] Dynamic kernel command-line - um
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (21 preceding siblings ...)
  2006-12-02 10:56 ` [PATCH 22/26] Dynamic kernel command-line - sparc64 Alon Bar-Lev
@ 2006-12-02 10:56 ` Alon Bar-Lev
  2006-12-02 10:56 ` [PATCH 24/26] Dynamic kernel command-line - v850 Alon Bar-Lev
                   ` (2 subsequent siblings)
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:56 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/um/include/user_util.h linux-2.6.19/arch/um/include/user_util.h
--- linux-2.6.19.org/arch/um/include/user_util.h	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/um/include/user_util.h	2006-12-02 11:31:33.000000000 +0200
@@ -38,7 +38,7 @@ extern unsigned long long highmem;
 
 extern char host_info[];
 
-extern char saved_command_line[];
+extern char __initdata boot_command_line[];
 
 extern unsigned long _stext, _etext, _sdata, _edata, __bss_start, _end;
 extern unsigned long _unprotected_end;
diff -urNp linux-2.6.19.org/arch/um/kernel/um_arch.c linux-2.6.19/arch/um/kernel/um_arch.c
--- linux-2.6.19.org/arch/um/kernel/um_arch.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/um/kernel/um_arch.c	2006-12-02 11:31:33.000000000 +0200
@@ -482,7 +482,7 @@ void __init setup_arch(char **cmdline_p)
 	atomic_notifier_chain_register(&panic_notifier_list,
 			&panic_exit_notifier);
 	paging_init();
-        strlcpy(saved_command_line, command_line, COMMAND_LINE_SIZE);
+	strlcpy(boot_command_line, command_line, COMMAND_LINE_SIZE);
  	*cmdline_p = command_line;
 	setup_hostinfo();
 }

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 24/26] Dynamic kernel command-line - v850
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (22 preceding siblings ...)
  2006-12-02 10:56 ` [PATCH 23/26] Dynamic kernel command-line - um Alon Bar-Lev
@ 2006-12-02 10:56 ` Alon Bar-Lev
  2006-12-02 10:57 ` [PATCH 25/26] Dynamic kernel command-line - x86_64 Alon Bar-Lev
  2006-12-02 10:58 ` [PATCH 26/26] Dynamic kernel command-line - xtensa Alon Bar-Lev
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:56 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/v850/kernel/setup.c linux-2.6.19/arch/v850/kernel/setup.c
--- linux-2.6.19.org/arch/v850/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/v850/kernel/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -42,7 +42,7 @@ extern char _root_fs_image_start __attri
 extern char _root_fs_image_end __attribute__ ((__weak__));
 
 
-char command_line[COMMAND_LINE_SIZE];
+char __initdata command_line[COMMAND_LINE_SIZE];
 
 /* Memory not used by the kernel.  */
 static unsigned long total_ram_pages;
@@ -64,8 +64,8 @@ void __init setup_arch (char **cmdline)
 {
 	/* Keep a copy of command line */
 	*cmdline = command_line;
-	memcpy (saved_command_line, command_line, COMMAND_LINE_SIZE);
-	saved_command_line[COMMAND_LINE_SIZE - 1] = '\0';
+	memcpy (boot_command_line, command_line, COMMAND_LINE_SIZE);
+	boot_command_line[COMMAND_LINE_SIZE - 1] = '\0';
 
 	console_verbose ();
 

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 25/26] Dynamic kernel command-line - x86_64
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (23 preceding siblings ...)
  2006-12-02 10:56 ` [PATCH 24/26] Dynamic kernel command-line - v850 Alon Bar-Lev
@ 2006-12-02 10:57 ` Alon Bar-Lev
  2006-12-02 10:58 ` [PATCH 26/26] Dynamic kernel command-line - xtensa Alon Bar-Lev
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:57 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/include/asm-x86_64/bootsetup.h linux-2.6.19/include/asm-x86_64/bootsetup.h
--- linux-2.6.19.org/include/asm-x86_64/bootsetup.h	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/include/asm-x86_64/bootsetup.h	2006-12-02 11:31:33.000000000 +0200
@@ -31,7 +31,7 @@ extern char x86_boot_params[BOOT_PARAM_S
 #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
diff -urNp linux-2.6.19.org/arch/x86_64/kernel/head64.c linux-2.6.19/arch/x86_64/kernel/head64.c
--- linux-2.6.19.org/arch/x86_64/kernel/head64.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/x86_64/kernel/head64.c	2006-12-02 11:31:33.000000000 +0200
@@ -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 *r
 		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)
diff -urNp linux-2.6.19.org/arch/x86_64/kernel/setup.c linux-2.6.19/arch/x86_64/kernel/setup.c
--- linux-2.6.19.org/arch/x86_64/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/x86_64/kernel/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -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();

^ permalink raw reply	[flat|nested] 30+ messages in thread

* [PATCH 26/26] Dynamic kernel command-line - xtensa
  2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
                   ` (24 preceding siblings ...)
  2006-12-02 10:57 ` [PATCH 25/26] Dynamic kernel command-line - x86_64 Alon Bar-Lev
@ 2006-12-02 10:58 ` Alon Bar-Lev
  25 siblings, 0 replies; 30+ messages in thread
From: Alon Bar-Lev @ 2006-12-02 10:58 UTC (permalink / raw)
  To: linux-arch, linux-kernel


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>

---

diff -urNp linux-2.6.19.org/arch/xtensa/kernel/setup.c linux-2.6.19/arch/xtensa/kernel/setup.c
--- linux-2.6.19.org/arch/xtensa/kernel/setup.c	2006-11-29 23:57:37.000000000 +0200
+++ linux-2.6.19/arch/xtensa/kernel/setup.c	2006-12-02 11:31:33.000000000 +0200
@@ -80,7 +80,7 @@ extern unsigned long loops_per_jiffy;
 
 /* Command line specified as configuration option. */
 
-static char command_line[COMMAND_LINE_SIZE];
+static char __initdata command_line[COMMAND_LINE_SIZE];
 
 #ifdef CONFIG_CMDLINE_BOOL
 static char default_command_line[COMMAND_LINE_SIZE] __initdata = CONFIG_CMDLINE;
@@ -255,8 +255,8 @@ void __init setup_arch(char **cmdline_p)
 	extern int mem_reserve(unsigned long, unsigned long, int);
 	extern void bootmem_init(void);
 
-	memcpy(saved_command_line, command_line, COMMAND_LINE_SIZE);
-	saved_command_line[COMMAND_LINE_SIZE-1] = '\0';
+	memcpy(boot_command_line, command_line, COMMAND_LINE_SIZE);
+	boot_command_line[COMMAND_LINE_SIZE-1] = '\0';
 	*cmdline_p = command_line;
 
 	/* Reserve some memory regions */

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 10/26] Dynamic kernel command-line - ia64
       [not found] ` <200701230014.06793.alon.barlev@gmail.com>
@ 2007-01-27  8:24   ` Andrew Morton
  2007-01-27  8:34     ` Alon Bar-Lev
  0 siblings, 1 reply; 30+ messages in thread
From: Andrew Morton @ 2007-01-27  8:24 UTC (permalink / raw)
  To: Alon Bar-Lev; +Cc: linux-arch, linux-kernel, H. Peter Anvin, Bernhard Walle

On Tue, 23 Jan 2007 00:14:06 +0200
Alon Bar-Lev <alon.barlev@gmail.com> wrote:

> 
> 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>
> 
> ---
> 
> diff -urNp linux-2.6.20-rc4-mm1.org/arch/ia64/kernel/efi.c linux-2.6.20-rc4-mm1/arch/ia64/kernel/efi.c
> --- linux-2.6.20-rc4-mm1.org/arch/ia64/kernel/efi.c	2007-01-07 07:45:51.000000000 +0200
> +++ linux-2.6.20-rc4-mm1/arch/ia64/kernel/efi.c	2007-01-22 23:32:30.000000000 +0200
> @@ -413,11 +413,11 @@ efi_init (void)
>  	efi_char16_t *c16;
>  	u64 efi_desc_size;
>  	char *cp, vendor[100] = "unknown";
> -	extern char saved_command_line[];
> +	extern char __initdata boot_command_line[];
>  	int i;
>  
>  chk_nointroute_opt(void)
>  {
>  	char *cp;
> -	extern char saved_command_line[];
> +	extern char __initdata boot_command_line[];

no no no no no no no.  Just because some whacked-out weenie went and put
extern declarations in .c files doesn't mean that we should copy them.

It doesn't even compile.

arch/ia64/kernel/efi.c: In function `efi_init':
arch/ia64/kernel/efi.c:416: error: section attribute cannot be specified for local variables

Please.  Go through the entire patchset, yank all those wrong private
declarations of boot_command_line[] and put a *single, kernel-wide*
declaration into a single, shared header file.

Thanks.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 10/26] Dynamic kernel command-line - ia64
  2007-01-27  8:24   ` [PATCH 10/26] Dynamic kernel command-line - ia64 Andrew Morton
@ 2007-01-27  8:34     ` Alon Bar-Lev
  2007-01-27  8:44       ` Andrew Morton
  0 siblings, 1 reply; 30+ messages in thread
From: Alon Bar-Lev @ 2007-01-27  8:34 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-arch, linux-kernel, H. Peter Anvin, Bernhard Walle

On 1/27/07, Andrew Morton <akpm@osdl.org> wrote:
> no no no no no no no.  Just because some whacked-out weenie went and put
> extern declarations in .c files doesn't mean that we should copy them.
>
> It doesn't even compile.

Sorry... I don't have all environments.

> Please.  Go through the entire patchset, yank all those wrong private
> declarations of boot_command_line[] and put a *single, kernel-wide*
> declaration into a single, shared header file.

I thought of this, while I was making the patch, I could not understand why
the maintainer did not simply #include <linux/init.h>

I can add this to any module which declares this by-itself but because
I cannot test all arch, I am afraid it will cause more problems.

Preparing a patch... :)

Best Regards,
Alon Bar-Lev.

^ permalink raw reply	[flat|nested] 30+ messages in thread

* Re: [PATCH 10/26] Dynamic kernel command-line - ia64
  2007-01-27  8:34     ` Alon Bar-Lev
@ 2007-01-27  8:44       ` Andrew Morton
  0 siblings, 0 replies; 30+ messages in thread
From: Andrew Morton @ 2007-01-27  8:44 UTC (permalink / raw)
  To: Alon Bar-Lev; +Cc: linux-arch, linux-kernel, H. Peter Anvin, Bernhard Walle

On Sat, 27 Jan 2007 10:34:27 +0200
"Alon Bar-Lev" <alon.barlev@gmail.com> wrote:

> > Please.  Go through the entire patchset, yank all those wrong private
> > declarations of boot_command_line[] and put a *single, kernel-wide*
> > declaration into a single, shared header file.
> 
> I thought of this, while I was making the patch, I could not understand why
> the maintainer did not simply #include <linux/init.h>

"ooh, I'll get in trouble if I edit a non-arch file, and it's a hassle to
add another file to my changeset and I can't be assed testing other
architectures and nobody's looking so I'll just sneak it in there".

> I can add this to any module which declares this by-itself but because
> I cannot test all arch, I am afraid it will cause more problems.
> 
> Preparing a patch... :)

Against next -mm, please.

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2007-01-27  8:44 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-12-02 10:47 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
2006-12-02 10:48 ` [PATCH 01/26] Dynamic kernel command-line - common Alon Bar-Lev
2006-12-02 10:48 ` [PATCH 02/26] Dynamic kernel command-line - alpha Alon Bar-Lev
2006-12-02 10:49 ` [PATCH 03/26] Dynamic kernel command-line - arm Alon Bar-Lev
2006-12-02 10:49 ` [PATCH 04/26] Dynamic kernel command-line - arm26 Alon Bar-Lev
2006-12-02 10:49 ` [PATCH 05/26] Dynamic kernel command-line - avr32 Alon Bar-Lev
2006-12-02 10:50 ` [PATCH 06/26] Dynamic kernel command-line - cris Alon Bar-Lev
2006-12-02 10:50 ` [PATCH 07/26] Dynamic kernel command-line - frv Alon Bar-Lev
2006-12-02 10:50 ` [PATCH 08/26] Dynamic kernel command-line - h8300 Alon Bar-Lev
2006-12-02 10:51 ` [PATCH 09/26] Dynamic kernel command-line - i386 Alon Bar-Lev
2006-12-02 10:51 ` [PATCH 10/26] Dynamic kernel command-line - ia64 Alon Bar-Lev
2006-12-02 10:52 ` [PATCH 11/26] Dynamic kernel command-line - m32r Alon Bar-Lev
2006-12-02 10:52 ` [PATCH 12/26] Dynamic kernel command-line - m68k Alon Bar-Lev
2006-12-02 10:53 ` [PATCH 13/26] Dynamic kernel command-line - m68knommu Alon Bar-Lev
2006-12-02 10:53 ` [PATCH 14/26] Dynamic kernel command-line - mips Alon Bar-Lev
2006-12-02 10:53 ` [PATCH 15/26] Dynamic kernel command-line - parisc Alon Bar-Lev
2006-12-02 10:54 ` [PATCH 16/26] Dynamic kernel command-line - powerpc Alon Bar-Lev
2006-12-02 10:54 ` [PATCH 17/26] Dynamic kernel command-line - ppc Alon Bar-Lev
2006-12-02 10:55 ` [PATCH 18/26] Dynamic kernel command-line - s390 Alon Bar-Lev
2006-12-02 10:55 ` [PATCH 19/26] Dynamic kernel command-line - sh Alon Bar-Lev
2006-12-02 10:55 ` [PATCH 20/26] Dynamic kernel command-line - sh64 Alon Bar-Lev
2006-12-02 10:55 ` [PATCH 21/26] Dynamic kernel command-line - sparc Alon Bar-Lev
2006-12-02 10:56 ` [PATCH 22/26] Dynamic kernel command-line - sparc64 Alon Bar-Lev
2006-12-02 10:56 ` [PATCH 23/26] Dynamic kernel command-line - um Alon Bar-Lev
2006-12-02 10:56 ` [PATCH 24/26] Dynamic kernel command-line - v850 Alon Bar-Lev
2006-12-02 10:57 ` [PATCH 25/26] Dynamic kernel command-line - x86_64 Alon Bar-Lev
2006-12-02 10:58 ` [PATCH 26/26] Dynamic kernel command-line - xtensa Alon Bar-Lev
     [not found] <200701230010.34323.alon.barlev@gmail.com>
     [not found] ` <200701230014.06793.alon.barlev@gmail.com>
2007-01-27  8:24   ` [PATCH 10/26] Dynamic kernel command-line - ia64 Andrew Morton
2007-01-27  8:34     ` Alon Bar-Lev
2007-01-27  8:44       ` Andrew Morton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).