Merge branch 'idr-4.11' of git://git.infradead.org/users/willy/linux-dax
[sfrench/cifs-2.6.git] / init / main.c
index a65e3aad31bc1bfa374d9fad5ff53c1e15cb1bcd..ae9f2008fb86834f20d8160936601ee908740a66 100644 (file)
@@ -12,6 +12,7 @@
 #define DEBUG          /* Enable initcall_debug */
 
 #include <linux/types.h>
+#include <linux/extable.h>
 #include <linux/module.h>
 #include <linux/proc_fs.h>
 #include <linux/kernel.h>
@@ -70,7 +71,6 @@
 #include <linux/shmem_fs.h>
 #include <linux/slab.h>
 #include <linux/perf_event.h>
-#include <linux/file.h>
 #include <linux/ptrace.h>
 #include <linux/blkdev.h>
 #include <linux/elevator.h>
@@ -82,6 +82,7 @@
 #include <linux/proc_ns.h>
 #include <linux/io.h>
 #include <linux/cache.h>
+#include <linux/rodata_test.h>
 
 #include <asm/io.h>
 #include <asm/bugs.h>
@@ -579,7 +580,7 @@ asmlinkage __visible void __init start_kernel(void)
        timekeeping_init();
        time_init();
        sched_clock_postinit();
-       printk_nmi_init();
+       printk_safe_init();
        perf_event_init();
        profile_init();
        call_function_init();
@@ -624,7 +625,6 @@ asmlinkage __visible void __init start_kernel(void)
        numa_policy_init();
        if (late_time_init)
                late_time_init();
-       sched_clock_init();
        calibrate_delay();
        pidmap_init();
        anon_vma_init();
@@ -662,7 +662,6 @@ asmlinkage __visible void __init start_kernel(void)
        sfi_init_late();
 
        if (efi_enabled(EFI_RUNTIME_SERVICES)) {
-               efi_late_init();
                efi_free_boot_services();
        }
 
@@ -924,7 +923,7 @@ static int try_to_run_init_process(const char *init_filename)
 
 static noinline void __init kernel_init_freeable(void);
 
-#if defined(CONFIG_DEBUG_RODATA) || defined(CONFIG_DEBUG_SET_MODULE_RONX)
+#if defined(CONFIG_STRICT_KERNEL_RWX) || defined(CONFIG_STRICT_MODULE_RWX)
 bool rodata_enabled __ro_after_init = true;
 static int __init set_debug_rodata(char *str)
 {
@@ -933,12 +932,13 @@ static int __init set_debug_rodata(char *str)
 __setup("rodata=", set_debug_rodata);
 #endif
 
-#ifdef CONFIG_DEBUG_RODATA
+#ifdef CONFIG_STRICT_KERNEL_RWX
 static void mark_readonly(void)
 {
-       if (rodata_enabled)
+       if (rodata_enabled) {
                mark_rodata_ro();
-       else
+               rodata_test();
+       } else
                pr_info("Kernel memory protection disabled.\n");
 }
 #else
@@ -960,8 +960,6 @@ static int __ref kernel_init(void *unused)
        system_state = SYSTEM_RUNNING;
        numa_default_policy();
 
-       flush_delayed_fput();
-
        rcu_end_inkernel_boot();
 
        if (ramdisk_execute_command) {