aboutsummaryrefslogtreecommitdiffstats
path: root/init/main.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-05-02 17:33:37 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-05-02 17:33:37 -0400
commiteb1574270a6de8fb8d31ffc3b021e30df0afcda3 (patch)
treed154ba369f222f5108ed1a2462d815d7faadc2e5 /init/main.c
parentaac10aaa8cc65a6fef6f5bc7d0b96035b0225a61 (diff)
parent69964ea4c7b68c9399f7977aa5b9aa6539a6a98a (diff)
Merge 3.4-rc5 into driver-core-next
This was done to resolve a merge issue with the init/main.c file. Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'init/main.c')
-rw-r--r--init/main.c27
1 files changed, 13 insertions, 14 deletions
diff --git a/init/main.c b/init/main.c
index 11bc6f7ed866..92c47c4dbde8 100644
--- a/init/main.c
+++ b/init/main.c
@@ -225,14 +225,9 @@ static int __init loglevel(char *str)
225 225
226early_param("loglevel", loglevel); 226early_param("loglevel", loglevel);
227 227
228/* 228/* Change NUL term back to "=", to make "param" the whole string. */
229 * Unknown boot options get handed to init, unless they look like 229static int __init repair_env_string(char *param, char *val, const char *unused)
230 * unused parameters (modprobe will find them in /proc/cmdline).
231 */
232static int __init unknown_bootoption(char *param, char *val,
233 const char *unused)
234{ 230{
235 /* Change NUL term back to "=", to make "param" the whole string. */
236 if (val) { 231 if (val) {
237 /* param=val or param="val"? */ 232 /* param=val or param="val"? */
238 if (val == param+strlen(param)+1) 233 if (val == param+strlen(param)+1)
@@ -244,6 +239,16 @@ static int __init unknown_bootoption(char *param, char *val,
244 } else 239 } else
245 BUG(); 240 BUG();
246 } 241 }
242 return 0;
243}
244
245/*
246 * Unknown boot options get handed to init, unless they look like
247 * unused parameters (modprobe will find them in /proc/cmdline).
248 */
249static int __init unknown_bootoption(char *param, char *val, const char *unused)
250{
251 repair_env_string(param, val, unused);
247 252
248 /* Handle obsolete-style parameters */ 253 /* Handle obsolete-style parameters */
249 if (obsolete_checksetup(param)) 254 if (obsolete_checksetup(param))
@@ -733,12 +738,6 @@ static char *initcall_level_names[] __initdata = {
733 "late", 738 "late",
734}; 739};
735 740
736static int __init ignore_unknown_bootoption(char *param, char *val,
737 const char *doing)
738{
739 return 0;
740}
741
742static void __init do_initcall_level(int level) 741static void __init do_initcall_level(int level)
743{ 742{
744 extern const struct kernel_param __start___param[], __stop___param[]; 743 extern const struct kernel_param __start___param[], __stop___param[];
@@ -749,7 +748,7 @@ static void __init do_initcall_level(int level)
749 static_command_line, __start___param, 748 static_command_line, __start___param,
750 __stop___param - __start___param, 749 __stop___param - __start___param,
751 level, level, 750 level, level,
752 &ignore_unknown_bootoption); 751 &repair_env_string);
753 752
754 for (fn = initcall_levels[level]; fn < initcall_levels[level+1]; fn++) 753 for (fn = initcall_levels[level]; fn < initcall_levels[level+1]; fn++)
755 do_one_initcall(*fn); 754 do_one_initcall(*fn);