x86/mrst: Avoid reporting wrong nmi status
authorJacob Pan <jacob.jun.pan@linux.intel.com>
Thu, 10 Nov 2011 13:43:05 +0000 (13:43 +0000)
committerIngo Molnar <mingo@elte.hu>
Thu, 10 Nov 2011 15:21:01 +0000 (16:21 +0100)
commit064a59b6dd1f341cc478c212bb436e3da9cb8d04
tree44a5075e6b913493391911a57ebbe3cc6a25c26e
parent0a9153261d54c432bc0bdc88607f24c835ac729c
x86/mrst: Avoid reporting wrong nmi status

Moorestown/Medfield platform does not have port 0x61 to report
NMI status, nor does it have external NMI sources. The only NMI
sources are from lapic, as results of perf counter overflow or
IPI, e.g. NMI watchdog or spin lock debug.

Reading port 0x61 on Moorestown will return 0xff which misled
NMI handlers to false critical errors such memory parity error.
The subsequent ioport access for NMI handling can also cause
undefined behavior on Moorestown.

This patch allows kernel process NMI due to watchdog or backrace
dump without unnecessary hangs.

Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
[hand applied]
Signed-off-by: Alan Cox <alan@linux.intel.com>
arch/x86/include/asm/mach_traps.h
arch/x86/include/asm/x86_init.h
arch/x86/kernel/nmi.c
arch/x86/kernel/x86_init.c
arch/x86/platform/mrst/mrst.c