diff options
author | Jeremy Fitzhardinge <jeremy@goop.org> | 2009-07-22 09:59:35 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2009-07-22 10:06:49 -0700 |
commit | 2cb078603abb612e3bcd428fb8122c3d39e08832 (patch) | |
tree | f7458972c577287ca6aef610e4bd17957fd35c7d /arch | |
parent | 6effa8f6fc786f00e3a23eae605e0f2e8e748faa (diff) | |
download | blackbird-op-linux-2cb078603abb612e3bcd428fb8122c3d39e08832.tar.gz blackbird-op-linux-2cb078603abb612e3bcd428fb8122c3d39e08832.zip |
x86, amd: Don't probe for extended APIC ID if APICs are disabled
If we've logically disabled apics, don't probe the PCI space for the
AMD extended APIC ID.
[ Impact: prevent boot crash under Xen. ]
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Reported-by: Bastian Blank <bastian@waldi.eu.org>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/kernel/cpu/amd.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c index 28e5f5956042..e2485b03f1cf 100644 --- a/arch/x86/kernel/cpu/amd.c +++ b/arch/x86/kernel/cpu/amd.c @@ -356,7 +356,7 @@ static void __cpuinit early_init_amd(struct cpuinfo_x86 *c) #endif #if defined(CONFIG_X86_LOCAL_APIC) && defined(CONFIG_PCI) /* check CPU config space for extended APIC ID */ - if (c->x86 >= 0xf) { + if (cpu_has_apic && c->x86 >= 0xf) { unsigned int val; val = read_pci_config(0, 24, 0, 0x68); if ((val & ((1 << 17) | (1 << 18))) == ((1 << 17) | (1 << 18))) |