OSDN Git Service

Merge "msm: qti_sdio_client: Return error number in diag callback"
[sagit-ice-cold/kernel_xiaomi_msm8998.git] / init / main.c
index db6b6cb..33cd39a 100644 (file)
@@ -88,7 +88,7 @@
 #include <asm/setup.h>
 #include <asm/sections.h>
 #include <asm/cacheflush.h>
-
+#include <soc/qcom/boot_stats.h>
 static int kernel_init(void *);
 
 extern void init_IRQ(void);
@@ -507,11 +507,6 @@ asmlinkage __visible void __init start_kernel(void)
        smp_setup_processor_id();
        debug_objects_early_init();
 
-       /*
-        * Set up the the initial canary ASAP:
-        */
-       boot_init_stack_canary();
-
        cgroup_init_early();
 
        local_irq_disable();
@@ -525,6 +520,10 @@ asmlinkage __visible void __init start_kernel(void)
        page_address_init();
        pr_notice("%s", linux_banner);
        setup_arch(&command_line);
+       /*
+        * Set up the the initial canary ASAP:
+        */
+       boot_init_stack_canary();
        mm_init_cpumask(&init_mm);
        setup_command_line(command_line);
        setup_nr_cpu_ids();
@@ -535,6 +534,8 @@ asmlinkage __visible void __init start_kernel(void)
        page_alloc_init();
 
        pr_notice("Kernel command line: %s\n", boot_command_line);
+       /* parameters may set static keys */
+       jump_label_init();
        parse_early_param();
        after_dashes = parse_args("Booting kernel",
                                  static_command_line, __start___param,
@@ -544,8 +545,6 @@ asmlinkage __visible void __init start_kernel(void)
                parse_args("Setting init args", after_dashes, NULL, 0, -1, -1,
                           NULL, set_init_arg);
 
-       jump_label_init();
-
        /*
         * These use large bootmem allocations and must precede
         * kmem_cache_init()
@@ -963,6 +962,7 @@ static int __ref kernel_init(void *unused)
        numa_default_policy();
 
        flush_delayed_fput();
+       place_marker("M : Kernel End");
 
        if (ramdisk_execute_command) {
                ret = run_init_process(ramdisk_execute_command);