diff options
author | OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> | 2006-03-31 05:30:33 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-31 15:18:53 -0500 |
commit | 9b41046cd0ee0a57f849d6e1363f7933e363cca9 (patch) | |
tree | 246820e9493770e071cb92a48e7f72d8b9c90a98 /arch/i386/kernel | |
parent | 68eef3b4791572ecb70249c7fb145bb3742dd899 (diff) |
[PATCH] Don't pass boot parameters to argv_init[]
The boot cmdline is parsed in parse_early_param() and
parse_args(,unknown_bootoption).
And __setup() is used in obsolete_checksetup().
start_kernel()
-> parse_args()
-> unknown_bootoption()
-> obsolete_checksetup()
If __setup()'s callback (->setup_func()) returns 1 in
obsolete_checksetup(), obsolete_checksetup() thinks a parameter was
handled.
If ->setup_func() returns 0, obsolete_checksetup() tries other
->setup_func(). If all ->setup_func() that matched a parameter returns 0,
a parameter is seted to argv_init[].
Then, when runing /sbin/init or init=app, argv_init[] is passed to the app.
If the app doesn't ignore those arguments, it will warning and exit.
This patch fixes a wrong usage of it, however fixes obvious one only.
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/i386/kernel')
-rw-r--r-- | arch/i386/kernel/apic.c | 2 | ||||
-rw-r--r-- | arch/i386/kernel/cpu/mcheck/mce.c | 4 | ||||
-rw-r--r-- | arch/i386/kernel/io_apic.c | 2 | ||||
-rw-r--r-- | arch/i386/kernel/traps.c | 2 |
4 files changed, 5 insertions, 5 deletions
diff --git a/arch/i386/kernel/apic.c b/arch/i386/kernel/apic.c index 3fff3c62d57a..6273bf74c203 100644 --- a/arch/i386/kernel/apic.c +++ b/arch/i386/kernel/apic.c | |||
@@ -752,7 +752,7 @@ static int __init apic_set_verbosity(char *str) | |||
752 | printk(KERN_WARNING "APIC Verbosity level %s not recognised" | 752 | printk(KERN_WARNING "APIC Verbosity level %s not recognised" |
753 | " use apic=verbose or apic=debug\n", str); | 753 | " use apic=verbose or apic=debug\n", str); |
754 | 754 | ||
755 | return 0; | 755 | return 1; |
756 | } | 756 | } |
757 | 757 | ||
758 | __setup("apic=", apic_set_verbosity); | 758 | __setup("apic=", apic_set_verbosity); |
diff --git a/arch/i386/kernel/cpu/mcheck/mce.c b/arch/i386/kernel/cpu/mcheck/mce.c index 6170af3c271a..afa0888f9a1e 100644 --- a/arch/i386/kernel/cpu/mcheck/mce.c +++ b/arch/i386/kernel/cpu/mcheck/mce.c | |||
@@ -64,13 +64,13 @@ void mcheck_init(struct cpuinfo_x86 *c) | |||
64 | static int __init mcheck_disable(char *str) | 64 | static int __init mcheck_disable(char *str) |
65 | { | 65 | { |
66 | mce_disabled = 1; | 66 | mce_disabled = 1; |
67 | return 0; | 67 | return 1; |
68 | } | 68 | } |
69 | 69 | ||
70 | static int __init mcheck_enable(char *str) | 70 | static int __init mcheck_enable(char *str) |
71 | { | 71 | { |
72 | mce_disabled = -1; | 72 | mce_disabled = -1; |
73 | return 0; | 73 | return 1; |
74 | } | 74 | } |
75 | 75 | ||
76 | __setup("nomce", mcheck_disable); | 76 | __setup("nomce", mcheck_disable); |
diff --git a/arch/i386/kernel/io_apic.c b/arch/i386/kernel/io_apic.c index 3b329af4afc5..f8f132aa5472 100644 --- a/arch/i386/kernel/io_apic.c +++ b/arch/i386/kernel/io_apic.c | |||
@@ -644,7 +644,7 @@ failed: | |||
644 | int __init irqbalance_disable(char *str) | 644 | int __init irqbalance_disable(char *str) |
645 | { | 645 | { |
646 | irqbalance_disabled = 1; | 646 | irqbalance_disabled = 1; |
647 | return 0; | 647 | return 1; |
648 | } | 648 | } |
649 | 649 | ||
650 | __setup("noirqbalance", irqbalance_disable); | 650 | __setup("noirqbalance", irqbalance_disable); |
diff --git a/arch/i386/kernel/traps.c b/arch/i386/kernel/traps.c index 6b63a5aa1e46..e38527994590 100644 --- a/arch/i386/kernel/traps.c +++ b/arch/i386/kernel/traps.c | |||
@@ -1193,6 +1193,6 @@ void __init trap_init(void) | |||
1193 | static int __init kstack_setup(char *s) | 1193 | static int __init kstack_setup(char *s) |
1194 | { | 1194 | { |
1195 | kstack_depth_to_print = simple_strtoul(s, NULL, 0); | 1195 | kstack_depth_to_print = simple_strtoul(s, NULL, 0); |
1196 | return 0; | 1196 | return 1; |
1197 | } | 1197 | } |
1198 | __setup("kstack=", kstack_setup); | 1198 | __setup("kstack=", kstack_setup); |