Dimitri Sivanich 8191c9f692 x86: UV: Address interrupt/IO port operation conflict
This patch for SGI UV systems addresses a problem whereby
interrupt transactions being looped back from a local IOH,
through the hub to a local CPU can (erroneously) conflict with
IO port operations and other transactions.

To workaound this we set a high bit in the APIC IDs used for
interrupts. This bit appears to be ignored by the sockets, but
it avoids the conflict in the hub.

Signed-off-by: Dimitri Sivanich <sivanich@sgi.com>
LKML-Reference: <20101116222352.GA8155@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
___

 arch/x86/include/asm/uv/uv_hub.h   |    4 ++++
 arch/x86/include/asm/uv/uv_mmrs.h  |   19 ++++++++++++++++++-
 arch/x86/kernel/apic/x2apic_uv_x.c |   25 +++++++++++++++++++++++--
 arch/x86/platform/uv/tlb_uv.c      |    2 +-
 arch/x86/platform/uv/uv_time.c     |    4 +++-
 5 files changed, 49 insertions(+), 5 deletions(-)
2010-11-18 10:41:25 +01:00
..
2010-08-27 11:12:29 -07:00
2010-10-26 16:52:08 -07:00
2010-07-21 11:33:27 -07:00
2010-07-21 21:23:51 -07:00
2010-08-27 11:12:29 -07:00
2010-10-26 16:52:14 -07:00
2010-09-22 16:33:03 -04:00
2010-10-27 17:22:16 +02:00
2010-10-27 18:03:10 -07:00
2010-10-25 19:38:52 +02:00
2009-12-09 16:28:59 -08:00
2010-03-26 11:33:57 +01:00
2010-02-16 18:21:32 +01:00
2010-07-21 21:23:40 -07:00
2010-10-18 10:49:34 -04:00