public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 01/26] Dynamic kernel command-line - common
  2006-09-03 21:50 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
@ 2006-09-03 21:52 ` Alon Bar-Lev
  2006-09-03 22:10   ` Matthew Wilcox
  0 siblings, 1 reply; 33+ messages in thread
From: Alon Bar-Lev @ 2006-09-03 21:52 UTC (permalink / raw)
  To: Andi Kleen
  Cc: Matt Domsch, Andrew Morton, linux-kernel, johninsd, davej, Riley,
	trini, davem, ecd, jj, anton, wli, lethal, rc, spyro, rth, avr32,
	hskinnemoen, starvik, ralf, matthew, grundler, geert, zippel,
	paulus, schwidefsky, heiko.carstens, uclinux-v850, chris


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.18-rc5-mm1.org/include/linux/init.h 
linux-2.6.18-rc5-mm1/include/linux/init.h
--- linux-2.6.18-rc5-mm1.org/include/linux/init.h	2006-09-03 
18:57:16.000000000 +0300
+++ linux-2.6.18-rc5-mm1/include/linux/init.h	2006-09-03 
20:30:12.000000000 +0300
@@ -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 */
@@ -145,7 +146,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.18-rc5-mm1.org/init/main.c 
linux-2.6.18-rc5-mm1/init/main.c
--- linux-2.6.18-rc5-mm1.org/init/main.c	2006-09-03 
18:57:18.000000000 +0300
+++ linux-2.6.18-rc5-mm1/init/main.c	2006-09-03 
23:27:30.000000000 +0300
@@ -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);
 	setup_per_cpu_areas();
 	smp_prepare_boot_cpu();	/* arch-specific boot-cpu hooks */
 
@@ -519,9 +538,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();

-- 
VGER BF report: H 0.00112924

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

* Re: [PATCH 01/26] Dynamic kernel command-line - common
  2006-09-03 21:52 ` [PATCH 01/26] Dynamic kernel command-line - common Alon Bar-Lev
@ 2006-09-03 22:10   ` Matthew Wilcox
  2006-09-03 22:12     ` Alon Bar-Lev
  2006-09-05 23:52     ` Bill Davidsen
  0 siblings, 2 replies; 33+ messages in thread
From: Matthew Wilcox @ 2006-09-03 22:10 UTC (permalink / raw)
  To: Alon Bar-Lev
  Cc: Andi Kleen, Matt Domsch, Andrew Morton, linux-kernel, johninsd,
	davej, Riley, trini, davem, ecd, jj, anton, wli, lethal, rc,
	spyro, rth, avr32, hskinnemoen, starvik, ralf, grundler, geert,
	zippel, paulus, schwidefsky, heiko.carstens, uclinux-v850, chris

On Mon, Sep 04, 2006 at 12:52:14AM +0300, Alon Bar-Lev wrote:
> @@ -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];

Your patch is wordwrapped.

Also, what was the point of all this?  Was there some discussion that
this would be useful?

-- 
VGER BF report: H 0.0043987

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

* Re: [PATCH 01/26] Dynamic kernel command-line - common
  2006-09-03 22:10   ` Matthew Wilcox
@ 2006-09-03 22:12     ` Alon Bar-Lev
  2006-09-05 23:52     ` Bill Davidsen
  1 sibling, 0 replies; 33+ messages in thread
From: Alon Bar-Lev @ 2006-09-03 22:12 UTC (permalink / raw)
  To: Matthew Wilcox
  Cc: Andi Kleen, Matt Domsch, Andrew Morton, linux-kernel, johninsd,
	davej, Riley, trini, davem, ecd, jj, anton, wli, lethal, rc,
	spyro, rth, avr32, hskinnemoen, starvik, ralf, grundler, geert,
	zippel, paulus, schwidefsky, heiko.carstens, uclinux-v850, chris

On Monday 04 September 2006 01:10, Matthew Wilcox wrote:
> Your patch is wordwrapped.

Thanks!
My mistake!
I will send again.

> Also, what was the point of all this?  Was there some
> discussion that this would be useful?

Yes. We are trying to make kernel parameter size much larger 
than 256 bytes (at least for x86).

And some developers commented that small systems will be 
affected if static buffer enlarged.

Best Regards,
Alon Bar-Lev.

-- 
VGER BF report: H 2.02507e-07

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

* [PATCH 01/26] Dynamic kernel command-line - common
  2006-09-03 22:15 [PATCH 00/26] Dynamic kernel command-line - Resend please ignore last Alon Bar-Lev
@ 2006-09-03 22:16 ` Alon Bar-Lev
  0 siblings, 0 replies; 33+ messages in thread
From: Alon Bar-Lev @ 2006-09-03 22:16 UTC (permalink / raw)
  To: Andi Kleen
  Cc: Matt Domsch, Andrew Morton, linux-kernel, johninsd, davej, Riley,
	trini, davem, ecd, jj, anton, wli, lethal, rc, spyro, rth, avr32,
	hskinnemoen, starvik, ralf, matthew, grundler, geert, zippel,
	paulus, schwidefsky, heiko.carstens, uclinux-v850, chris


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.18-rc5-mm1.org/include/linux/init.h linux-2.6.18-rc5-mm1/include/linux/init.h
--- linux-2.6.18-rc5-mm1.org/include/linux/init.h	2006-09-03 18:57:16.000000000 +0300
+++ linux-2.6.18-rc5-mm1/include/linux/init.h	2006-09-03 20:30:12.000000000 +0300
@@ -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 */
@@ -145,7 +146,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.18-rc5-mm1.org/init/main.c linux-2.6.18-rc5-mm1/init/main.c
--- linux-2.6.18-rc5-mm1.org/init/main.c	2006-09-03 18:57:18.000000000 +0300
+++ linux-2.6.18-rc5-mm1/init/main.c	2006-09-03 23:27:30.000000000 +0300
@@ -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);
 	setup_per_cpu_areas();
 	smp_prepare_boot_cpu();	/* arch-specific boot-cpu hooks */
 
@@ -519,9 +538,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();

-- 
VGER BF report: H 0

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

* Re: [PATCH 01/26] Dynamic kernel command-line - common
  2006-09-03 22:10   ` Matthew Wilcox
  2006-09-03 22:12     ` Alon Bar-Lev
@ 2006-09-05 23:52     ` Bill Davidsen
  1 sibling, 0 replies; 33+ messages in thread
From: Bill Davidsen @ 2006-09-05 23:52 UTC (permalink / raw)
  To: Matthew Wilcox
  Cc: Andi Kleen, Matt Domsch, Andrew Morton, linux-kernel, johninsd,
	davej, Riley, trini, davem, ecd, jj, anton, wli, lethal, rc,
	spyro, rth, avr32, hskinnemoen, starvik, ralf, grundler, geert,
	zippel, paulus, schwidefsky, heiko.carstens, uclinux-v850, chris

Matthew Wilcox wrote:
> On Mon, Sep 04, 2006 at 12:52:14AM +0300, Alon Bar-Lev wrote:
>> @@ -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];
> 
> Your patch is wordwrapped.
> 
> Also, what was the point of all this?  Was there some discussion that
> this would be useful?
> 
Assuming that this works as described, the benefits are obvious. In most 
cases I would expect the memory saved to be more than the patch takes, 
and the patch is init code. Having the possibility of having very long 
command lines is bound to be useful on occasion, particularly when using 
drivers with option-names-way-too-long.

I agree that this wouldn't make my top 200 list of wanted features, but 
it's here, it saves a little memory, it adds a capability someone will 
find useful, why not use it? It appears to be a small win in every case.

-- 
Bill Davidsen <davidsen@tmr.com>
   Obscure bug of 2004: BASH BUFFER OVERFLOW - if bash is being run by a
normal user and is setuid root, with the "vi" line edit mode selected,
and the character set is "big5," an off-by-one errors occurs during
wildcard (glob) expansion.

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

* [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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ 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; 33+ 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] 33+ messages in thread

* [patch 01/26] Dynamic kernel command-line - common
  2007-01-18 12:58 [patch 00/26] Dynamic kernel command-line Bernhard Walle
@ 2007-01-18 12:58 ` Bernhard Walle
  0 siblings, 0 replies; 33+ messages in thread
From: Bernhard Walle @ 2007-01-18 12:58 UTC (permalink / raw)
  To: linux-kernel, linux-arch; +Cc: Alon Bar-Lev

[-- Attachment #1: dynamic-kernel-command-line-common.diff --]
[-- Type: text/plain, Size: 4166 bytes --]

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>

---
 include/linux/init.h |    5 +++--
 init/main.c          |   29 ++++++++++++++++++++++++-----
 2 files changed, 27 insertions(+), 7 deletions(-)

Index: linux-2.6.20-rc4-mm1/include/linux/init.h
===================================================================
--- linux-2.6.20-rc4-mm1.orig/include/linux/init.h
+++ linux-2.6.20-rc4-mm1/include/linux/init.h
@@ -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 */
@@ -164,7 +165,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__ */
 
Index: linux-2.6.20-rc4-mm1/init/main.c
===================================================================
--- linux-2.6.20-rc4-mm1.orig/init/main.c
+++ linux-2.6.20-rc4-mm1/init/main.c
@@ -122,8 +122,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;
@@ -406,6 +410,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
@@ -459,7 +477,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;
 }
@@ -509,6 +527,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 */
@@ -526,9 +545,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);
 	if (!irqs_disabled()) {

-- 

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

end of thread, other threads:[~2007-01-18 13:04 UTC | newest]

Thread overview: 33+ 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
  -- strict thread matches above, loose matches on Subject: below --
2007-01-18 12:58 [patch 00/26] Dynamic kernel command-line Bernhard Walle
2007-01-18 12:58 ` [patch 01/26] Dynamic kernel command-line - common Bernhard Walle
2006-09-03 22:15 [PATCH 00/26] Dynamic kernel command-line - Resend please ignore last Alon Bar-Lev
2006-09-03 22:16 ` [PATCH 01/26] Dynamic kernel command-line - common Alon Bar-Lev
2006-09-03 21:50 [PATCH 00/26] Dynamic kernel command-line Alon Bar-Lev
2006-09-03 21:52 ` [PATCH 01/26] Dynamic kernel command-line - common Alon Bar-Lev
2006-09-03 22:10   ` Matthew Wilcox
2006-09-03 22:12     ` Alon Bar-Lev
2006-09-05 23:52     ` Bill Davidsen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox