summaryrefslogtreecommitdiff
path: root/arch/x86/kernel/apic/x2apic_phys.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-04-27 19:40:17 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2012-04-27 19:40:17 -0700
commitc28c48516975af9cad219a52557333342e0ed319 (patch)
tree80015a8cee2e413348391d0e9e19662fc0385170 /arch/x86/kernel/apic/x2apic_phys.c
parentdaae677f56187e83ddc81cf8e45bbcc236e0e661 (diff)
parentea0dcf903e7d76aa5d483d876215fedcfdfe140f (diff)
Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 fixes from Ingo Molnar. * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86/apic: Use x2apic physical mode based on FADT setting x86/mrst: Quiet sparse noise about plain integer as NULL pointer x86, intel_cacheinfo: Fix error return code in amd_set_l3_disable_slot()
Diffstat (limited to 'arch/x86/kernel/apic/x2apic_phys.c')
-rw-r--r--arch/x86/kernel/apic/x2apic_phys.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/kernel/apic/x2apic_phys.c b/arch/x86/kernel/apic/x2apic_phys.c
index 8a778db45e3..991e315f422 100644
--- a/arch/x86/kernel/apic/x2apic_phys.c
+++ b/arch/x86/kernel/apic/x2apic_phys.c
@@ -24,6 +24,12 @@ static int x2apic_acpi_madt_oem_check(char *oem_id, char *oem_table_id)
{
if (x2apic_phys)
return x2apic_enabled();
+ else if ((acpi_gbl_FADT.header.revision >= FADT2_REVISION_ID) &&
+ (acpi_gbl_FADT.flags & ACPI_FADT_APIC_PHYSICAL) &&
+ x2apic_enabled()) {
+ printk(KERN_DEBUG "System requires x2apic physical mode\n");
+ return 1;
+ }
else
return 0;
}