Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty...
[firefly-linux-kernel-4.4.55.git] / arch / x86 / kernel / setup.c
index e89acdf6b77b82b3ecfed04d4a3aa9aa5c6f8b63..90d8cc930f5ed134735f7697e016a83e5657dcb8 100644 (file)
@@ -171,9 +171,15 @@ static struct resource bss_resource = {
 
 #ifdef CONFIG_X86_32
 /* cpu data as detected by the assembly code in head.S */
-struct cpuinfo_x86 new_cpu_data __cpuinitdata = {0, 0, 0, 0, -1, 1, 0, 0, -1};
+struct cpuinfo_x86 new_cpu_data __cpuinitdata = {
+       .wp_works_ok = -1,
+       .fdiv_bug = -1,
+};
 /* common cpu data for all cpus */
-struct cpuinfo_x86 boot_cpu_data __read_mostly = {0, 0, 0, 0, -1, 1, 0, 0, -1};
+struct cpuinfo_x86 boot_cpu_data __read_mostly = {
+       .wp_works_ok = -1,
+       .fdiv_bug = -1,
+};
 EXPORT_SYMBOL(boot_cpu_data);
 
 unsigned int def_to_bigsmp;
@@ -1056,15 +1062,6 @@ void __init setup_arch(char **cmdline_p)
        setup_bios_corruption_check();
 #endif
 
-       /*
-        * In the memory hotplug case, the kernel needs info from SRAT to
-        * determine which memory is hotpluggable before allocating memory
-        * using memblock.
-        */
-       acpi_boot_table_init();
-       early_acpi_boot_init();
-       early_parse_srat();
-
 #ifdef CONFIG_X86_32
        printk(KERN_DEBUG "initial memory mapped: [mem 0x00000000-%#010lx]\n",
                        (max_pfn_mapped<<PAGE_SHIFT) - 1);
@@ -1110,6 +1107,10 @@ void __init setup_arch(char **cmdline_p)
        /*
         * Parse the ACPI tables for possible boot-time SMP configuration.
         */
+       acpi_boot_table_init();
+
+       early_acpi_boot_init();
+
        initmem_init();
        memblock_find_dma_reserve();