]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blame - src/patches/suse-2.6.27.25/patches.arch/x2APIC_PATCH_43_of_41_2c72d93f6593f386f5760ca8e7ac7026948c31d7
Reenabled linux-xen and xen-image build
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.25 / patches.arch / x2APIC_PATCH_43_of_41_2c72d93f6593f386f5760ca8e7ac7026948c31d7
CommitLineData
00e5a55c
BS
1From: Yinghai Lu <yhlu.kernel@gmail.com>
2Subject: x2apic: fix reserved APIC register accesses in print_local_APIC()
3References: fate #303948 and fate #303984
4Patch-Mainline: queued for .28
5Commit-ID: 2c72d93f6593f386f5760ca8e7ac7026948c31d7
6
7Signed-off-by: Thomas Renninger <trenn@suse.de>
8
9APIC_ARBPRI is a reserved register for XAPIC and beyond.
10APIC_RRR is a reserved register except for 82489DX, APIC for Pentium processors.
11APIC_EOI is a write only register.
12APIC_DFR is reserved in x2apic mode.
13
14Access to these registers in x2apic will result in #GP fault. Fix these
15apic register accesses.
16
17Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
18Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
19Cc: Maciej W. Rozycki <macro@linux-mips.org>
20Signed-off-by: Ingo Molnar <mingo@elte.hu>
21
22---
23 arch/x86/kernel/io_apic_32.c | 8 +++++---
24 1 file changed, 5 insertions(+), 3 deletions(-)
25
26Index: linux-2.6.26/arch/x86/kernel/io_apic_32.c
27===================================================================
28--- linux-2.6.26.orig/arch/x86/kernel/io_apic_32.c
29+++ linux-2.6.26/arch/x86/kernel/io_apic_32.c
30@@ -1500,9 +1500,11 @@ void /*__init*/ print_local_APIC(void *d
31 printk(KERN_DEBUG "... APIC TASKPRI: %08x (%02x)\n", v, v & APIC_TPRI_MASK);
32
33 if (APIC_INTEGRATED(ver)) { /* !82489DX */
34- v = apic_read(APIC_ARBPRI);
35- printk(KERN_DEBUG "... APIC ARBPRI: %08x (%02x)\n", v,
36- v & APIC_ARBPRI_MASK);
37+ if (!APIC_XAPIC(ver)) {
38+ v = apic_read(APIC_ARBPRI);
39+ printk(KERN_DEBUG "... APIC ARBPRI: %08x (%02x)\n", v,
40+ v & APIC_ARBPRI_MASK);
41+ }
42 v = apic_read(APIC_PROCPRI);
43 printk(KERN_DEBUG "... APIC PROCPRI: %08x\n", v);
44 }