OpenCloudOS-Kernel/arch/x86/kernel/cpu/mcheck
Andi Kleen 8e97aef5f4 x86, mce: remove machine check handler idle notify on 64bit
i386 has no idle notifiers, but the 64bit machine check
code uses them to wake up mcelog from a fatal machine check
exception.

For corrected machine checks found by the poller or
threshold interrupts going through an idle notifier is not needed
because the wake_up can is just done directly and doesn't
need the idle notifier. It is only needed for logging
exceptions.

To be honest I never liked the idle notifier even though I signed
off on it. On closer investigation the code actually turned out
to be nearly. Right now machine check exceptions on x86 are always
unrecoverable (lead to panic due to PCC), which means we never execute
the idle notifier path.

The only exception is the somewhat weird tolerant==3 case, which
ignores PCC. I'll fix this in a future patch in a much cleaner way.

So remove the "mcelog wakeup through idle notifier" code
from 64bit.

This allows to compile the 64bit machine check handler on 32bit
which doesn't have idle notifiers.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
2009-05-28 09:24:12 -07:00
..
Makefile x86, mce: unify 2009-05-28 09:24:11 -07:00
k7.c x86, mce: clean up k7.c 2009-05-28 09:24:10 -07:00
mce.c x86, mce: remove machine check handler idle notify on 64bit 2009-05-28 09:24:12 -07:00
mce.h x86, mce: use a call vector to call the 64bit mce handler 2009-05-28 09:24:12 -07:00
mce_amd_64.c x86, mce: Rename sysfs variables 2009-05-28 09:24:11 -07:00
mce_intel.c x86, mce: Cleanup symbols in intel thermal codes 2009-05-28 09:24:11 -07:00
mce_intel_64.c x86, mce: Cleanup symbols in intel thermal codes 2009-05-28 09:24:11 -07:00
non-fatal.c x86, mce: clean up non-fatal.c 2009-05-28 09:24:10 -07:00
p4.c x86, mce: Cleanup symbols in intel thermal codes 2009-05-28 09:24:11 -07:00
p5.c x86, mce: clean up p5.c 2009-05-28 09:24:09 -07:00
p6.c x86, mce: clean up p6.c 2009-05-28 09:24:09 -07:00
therm_throt.c x86, mce: clean up therm_throt.c 2009-05-28 09:24:10 -07:00
threshold.c x86, mce: fix build failure in arch/x86/kernel/cpu/mcheck/threshold.c 2009-03-04 11:48:28 +01:00
winchip.c x86, mce: clean up winchip.c 2009-05-28 09:24:10 -07:00