diff options
Diffstat (limited to 'arch/x86/kernel/setup_64.c')
-rw-r--r-- | arch/x86/kernel/setup_64.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/arch/x86/kernel/setup_64.c b/arch/x86/kernel/setup_64.c index 13fe525bf06..990724143c4 100644 --- a/arch/x86/kernel/setup_64.c +++ b/arch/x86/kernel/setup_64.c | |||
@@ -1036,14 +1036,24 @@ void __cpuinit identify_cpu(struct cpuinfo_x86 *c) | |||
1036 | #endif | 1036 | #endif |
1037 | select_idle_routine(c); | 1037 | select_idle_routine(c); |
1038 | 1038 | ||
1039 | if (c != &boot_cpu_data) | ||
1040 | mtrr_ap_init(); | ||
1041 | #ifdef CONFIG_NUMA | 1039 | #ifdef CONFIG_NUMA |
1042 | numa_add_cpu(smp_processor_id()); | 1040 | numa_add_cpu(smp_processor_id()); |
1043 | #endif | 1041 | #endif |
1044 | 1042 | ||
1045 | } | 1043 | } |
1046 | 1044 | ||
1045 | void __cpuinit identify_boot_cpu(void) | ||
1046 | { | ||
1047 | identify_cpu(&boot_cpu_data); | ||
1048 | } | ||
1049 | |||
1050 | void __cpuinit identify_secondary_cpu(struct cpuinfo_x86 *c) | ||
1051 | { | ||
1052 | BUG_ON(c == &boot_cpu_data); | ||
1053 | identify_cpu(c); | ||
1054 | mtrr_ap_init(); | ||
1055 | } | ||
1056 | |||
1047 | static __init int setup_noclflush(char *arg) | 1057 | static __init int setup_noclflush(char *arg) |
1048 | { | 1058 | { |
1049 | setup_clear_cpu_cap(X86_FEATURE_CLFLSH); | 1059 | setup_clear_cpu_cap(X86_FEATURE_CLFLSH); |