diff options
Diffstat (limited to 'arch/x86/kernel/apic/probe_64.c')
-rw-r--r-- | arch/x86/kernel/apic/probe_64.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/arch/x86/kernel/apic/probe_64.c b/arch/x86/kernel/apic/probe_64.c index c4cbd3080c1c..65edc180fc82 100644 --- a/arch/x86/kernel/apic/probe_64.c +++ b/arch/x86/kernel/apic/probe_64.c | |||
@@ -64,23 +64,16 @@ void __init default_setup_apic_routing(void) | |||
64 | apic = &apic_x2apic_phys; | 64 | apic = &apic_x2apic_phys; |
65 | else | 65 | else |
66 | apic = &apic_x2apic_cluster; | 66 | apic = &apic_x2apic_cluster; |
67 | printk(KERN_INFO "Setting APIC routing to %s\n", apic->name); | ||
67 | } | 68 | } |
68 | #endif | 69 | #endif |
69 | 70 | ||
70 | if (apic == &apic_flat) { | 71 | if (apic == &apic_flat) { |
71 | switch (boot_cpu_data.x86_vendor) { | 72 | if (max_physical_apicid >= 8) |
72 | case X86_VENDOR_INTEL: | 73 | apic = &apic_physflat; |
73 | if (num_processors > 8) | 74 | printk(KERN_INFO "Setting APIC routing to %s\n", apic->name); |
74 | apic = &apic_physflat; | ||
75 | break; | ||
76 | case X86_VENDOR_AMD: | ||
77 | if (max_physical_apicid >= 8) | ||
78 | apic = &apic_physflat; | ||
79 | } | ||
80 | } | 75 | } |
81 | 76 | ||
82 | printk(KERN_INFO "Setting APIC routing to %s\n", apic->name); | ||
83 | |||
84 | if (is_vsmp_box()) { | 77 | if (is_vsmp_box()) { |
85 | /* need to update phys_pkg_id */ | 78 | /* need to update phys_pkg_id */ |
86 | apic->phys_pkg_id = apicid_phys_pkg_id; | 79 | apic->phys_pkg_id = apicid_phys_pkg_id; |