diff options
Diffstat (limited to 'arch/x86/kernel')
-rw-r--r-- | arch/x86/kernel/setup_64.c | 4 | ||||
-rw-r--r-- | arch/x86/kernel/smpboot_64.c | 6 |
2 files changed, 8 insertions, 2 deletions
diff --git a/arch/x86/kernel/setup_64.c b/arch/x86/kernel/setup_64.c index e2beb4cba15f..529e45c37b1c 100644 --- a/arch/x86/kernel/setup_64.c +++ b/arch/x86/kernel/setup_64.c | |||
@@ -65,6 +65,7 @@ | |||
65 | #include <asm/cacheflush.h> | 65 | #include <asm/cacheflush.h> |
66 | #include <asm/mce.h> | 66 | #include <asm/mce.h> |
67 | #include <asm/ds.h> | 67 | #include <asm/ds.h> |
68 | #include <asm/topology.h> | ||
68 | 69 | ||
69 | #ifdef CONFIG_PARAVIRT | 70 | #ifdef CONFIG_PARAVIRT |
70 | #include <asm/paravirt.h> | 71 | #include <asm/paravirt.h> |
@@ -359,8 +360,9 @@ void __init setup_arch(char **cmdline_p) | |||
359 | io_delay_init(); | 360 | io_delay_init(); |
360 | 361 | ||
361 | #ifdef CONFIG_SMP | 362 | #ifdef CONFIG_SMP |
362 | /* setup to use the static apicid table during kernel startup */ | 363 | /* setup to use the early static init tables during kernel startup */ |
363 | x86_cpu_to_apicid_early_ptr = (void *)&x86_cpu_to_apicid_init; | 364 | x86_cpu_to_apicid_early_ptr = (void *)&x86_cpu_to_apicid_init; |
365 | x86_cpu_to_node_map_early_ptr = (void *)&x86_cpu_to_node_map_init; | ||
364 | #endif | 366 | #endif |
365 | 367 | ||
366 | #ifdef CONFIG_ACPI | 368 | #ifdef CONFIG_ACPI |
diff --git a/arch/x86/kernel/smpboot_64.c b/arch/x86/kernel/smpboot_64.c index a2076b5f12af..a8bc2bcdb74a 100644 --- a/arch/x86/kernel/smpboot_64.c +++ b/arch/x86/kernel/smpboot_64.c | |||
@@ -861,9 +861,12 @@ void __init smp_set_apicids(void) | |||
861 | int cpu; | 861 | int cpu; |
862 | 862 | ||
863 | for_each_possible_cpu(cpu) { | 863 | for_each_possible_cpu(cpu) { |
864 | if (per_cpu_offset(cpu)) | 864 | if (per_cpu_offset(cpu)) { |
865 | per_cpu(x86_cpu_to_apicid, cpu) = | 865 | per_cpu(x86_cpu_to_apicid, cpu) = |
866 | x86_cpu_to_apicid_init[cpu]; | 866 | x86_cpu_to_apicid_init[cpu]; |
867 | per_cpu(x86_cpu_to_node_map, cpu) = | ||
868 | x86_cpu_to_node_map_init[cpu]; | ||
869 | } | ||
867 | else | 870 | else |
868 | printk(KERN_NOTICE "per_cpu_offset zero for cpu %d\n", | 871 | printk(KERN_NOTICE "per_cpu_offset zero for cpu %d\n", |
869 | cpu); | 872 | cpu); |
@@ -871,6 +874,7 @@ void __init smp_set_apicids(void) | |||
871 | 874 | ||
872 | /* indicate the early static arrays are gone */ | 875 | /* indicate the early static arrays are gone */ |
873 | x86_cpu_to_apicid_early_ptr = NULL; | 876 | x86_cpu_to_apicid_early_ptr = NULL; |
877 | x86_cpu_to_node_map_early_ptr = NULL; | ||
874 | } | 878 | } |
875 | 879 | ||
876 | static void __init smp_cpu_index_default(void) | 880 | static void __init smp_cpu_index_default(void) |