linux/arch/x86/kernel/cpu
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
..
cpufreq [CPUFREQ] powernow-k8: determine exact CPU frequency for HW Pstates 2009-05-26 12:04:51 -04:00
mcheck x86, mce: remove machine check handler idle notify on 64bit 2009-05-28 09:24:12 -07:00
mtrr x86: mtrr: Fix high_width computation when phys-addr is >= 44bit 2009-05-11 11:40:43 +02:00
.gitignore Update .gitignore files for generated targets 2008-10-20 11:24:31 -07:00
addon_cpuid_features.c x86 ACPI: Add support for Always Running APIC timer 2009-04-07 18:17:51 -04:00
amd.c x86: move various CPU initialization objects into .cpuinit.rodata 2009-03-12 13:13:07 +01:00
bugs_64.c
bugs.c x86: fdiv bug detection fix 2008-07-31 23:56:27 +02:00
centaur.c x86/centaur: merge 32 & 64 bit version 2009-03-14 16:27:29 +01:00
cmpxchg.c x86: move cmpxchg fallbacks to a generic place 2008-08-18 16:05:47 +02:00
common.c x86: introduce noxsave boot parameter 2009-05-22 13:10:54 -07:00
cpu_debug.c x86: cpu_debug remove execute permission 2009-04-09 06:34:02 +02:00
cpu.h x86: cpu/cpu.h cleanup 2009-03-23 02:06:51 +05:30
cyrix.c x86: move various CPU initialization objects into .cpuinit.rodata 2009-03-12 13:13:07 +01:00
hypervisor.c x86: hypervisor - fix sparse warnings 2008-11-23 11:11:52 +01:00
intel_cacheinfo.c Merge branch 'linus' into cpumask-for-linus 2009-03-30 23:53:32 +02:00
intel.c Merge branch 'linus' into x86/core 2009-03-28 22:27:45 +01:00
Makefile x86/centaur: merge 32 & 64 bit version 2009-03-14 16:27:29 +01:00
mkcapflags.pl x86: generate names for /proc/cpuinfo from <asm/cpufeature.h> 2008-08-27 19:23:22 -07:00
perfctr-watchdog.c x86: fold apic_ops into genapic 2009-02-17 12:22:20 +01:00
powerflags.c x86: generate names for /proc/cpuinfo from <asm/cpufeature.h> 2008-08-27 19:23:22 -07:00
proc.c x86: show number of core_siblings instead of thread_siblings in /proc/cpuinfo 2009-05-04 20:36:49 +02:00
transmeta.c x86: move various CPU initialization objects into .cpuinit.rodata 2009-03-12 13:13:07 +01:00
umc.c x86: move various CPU initialization objects into .cpuinit.rodata 2009-03-12 13:13:07 +01:00
vmware.c x86: vmware - fix sparse warnings 2008-11-23 11:02:36 +01:00