diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-05-02 17:33:37 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-05-02 17:33:37 -0400 |
commit | eb1574270a6de8fb8d31ffc3b021e30df0afcda3 (patch) | |
tree | d154ba369f222f5108ed1a2462d815d7faadc2e5 /init | |
parent | aac10aaa8cc65a6fef6f5bc7d0b96035b0225a61 (diff) | |
parent | 69964ea4c7b68c9399f7977aa5b9aa6539a6a98a (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')
-rw-r--r-- | init/main.c | 27 |
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 | ||
226 | early_param("loglevel", loglevel); | 226 | early_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 | 229 | static int __init repair_env_string(char *param, char *val, const char *unused) |
230 | * unused parameters (modprobe will find them in /proc/cmdline). | ||
231 | */ | ||
232 | static 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 | */ | ||
249 | static 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 | ||
736 | static int __init ignore_unknown_bootoption(char *param, char *val, | ||
737 | const char *doing) | ||
738 | { | ||
739 | return 0; | ||
740 | } | ||
741 | |||
742 | static void __init do_initcall_level(int level) | 741 | static 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); |