[PATCH] I/O APIC confusion

From: Hugh Dickins (hugh@veritas.com)
Date: Fri Jan 03 2003 - 12:48:44 EST


Dell 2600 could not bring up its MPT Fusion and hung there:
I/O APIC #7 at 0xFEC82000 was muddled with #8 at 0xFEC82800,
because the IO_APIC_BASE fixmap macro assumed page boundary.

No longer do I think all those I/O APIC messages at startup
a waste of log buffer! Patch against 2.5.54: first appeared
in 2.4.18, then 2.5-dj: please apply.

Hugh

--- 2.5.54/include/asm-i386/io_apic.h Wed Nov 27 23:48:16 2002
+++ linux/include/asm-i386/io_apic.h Fri Jan 3 14:29:44 2003
@@ -16,7 +16,8 @@
 #define APIC_MISMATCH_DEBUG
 
 #define IO_APIC_BASE(idx) \
- ((volatile int *)__fix_to_virt(FIX_IO_APIC_BASE_0 + idx))
+ ((volatile int *)(__fix_to_virt(FIX_IO_APIC_BASE_0 + idx) \
+ + (mp_ioapics[idx].mpc_apicaddr & ~PAGE_MASK)))
 
 /*
  * The structure of the IO-APIC:

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Jan 07 2003 - 22:00:21 EST