Merge tag 'driver-core-3.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git...
[pandora-kernel.git] / init / main.c
index cb54cd3..1ca6b32 100644 (file)
@@ -226,7 +226,7 @@ static int __init loglevel(char *str)
 early_param("loglevel", loglevel);
 
 /* Change NUL term back to "=", to make "param" the whole string. */
-static int __init repair_env_string(char *param, char *val)
+static int __init repair_env_string(char *param, char *val, const char *unused)
 {
        if (val) {
                /* param=val or param="val"? */
@@ -246,9 +246,9 @@ static int __init repair_env_string(char *param, char *val)
  * Unknown boot options get handed to init, unless they look like
  * unused parameters (modprobe will find them in /proc/cmdline).
  */
-static int __init unknown_bootoption(char *param, char *val)
+static int __init unknown_bootoption(char *param, char *val, const char *unused)
 {
-       repair_env_string(param, val);
+       repair_env_string(param, val, unused);
 
        /* Handle obsolete-style parameters */
        if (obsolete_checksetup(param))
@@ -385,7 +385,7 @@ static noinline void __init_refok rest_init(void)
 }
 
 /* Check for early params. */
-static int __init do_early_param(char *param, char *val)
+static int __init do_early_param(char *param, char *val, const char *unused)
 {
        const struct obs_kernel_param *p;
 
@@ -725,14 +725,14 @@ static initcall_t *initcall_levels[] __initdata = {
 };
 
 static char *initcall_level_names[] __initdata = {
-       "early parameters",
-       "core parameters",
-       "postcore parameters",
-       "arch parameters",
-       "subsys parameters",
-       "fs parameters",
-       "device parameters",
-       "late parameters",
+       "early",
+       "core",
+       "postcore",
+       "arch",
+       "subsys",
+       "fs",
+       "device",
+       "late",
 };
 
 static void __init do_initcall_level(int level)
@@ -745,7 +745,7 @@ static void __init do_initcall_level(int level)
                   static_command_line, __start___param,
                   __stop___param - __start___param,
                   level, level,
-                  repair_env_string);
+                  &repair_env_string);
 
        for (fn = initcall_levels[level]; fn < initcall_levels[level+1]; fn++)
                do_one_initcall(*fn);
@@ -755,8 +755,13 @@ static void __init do_initcalls(void)
 {
        int level;
 
-       for (level = 0; level < ARRAY_SIZE(initcall_levels) - 1; level++)
+       for (level = 0; level < ARRAY_SIZE(initcall_levels) - 1; level++) {
+               pr_info("initlevel:%d=%s, %d registered initcalls\n",
+                       level, initcall_level_names[level],
+                       (int) (initcall_levels[level+1]
+                               - initcall_levels[level]));
                do_initcall_level(level);
+       }
 }
 
 /*