linux-hardened/arch/x86/kernel/cpu
Andi Kleen b79109c3bb x86, mce: separate correct machine check poller and fatal exception handler
Impact: cleanup, performance enhancement

The machine check poller is diverging more and more from the fatal
exception handler. Instead of adding more special cases separate the code
paths completely. The corrected poll path is actually quite simple,
and this doesn't result in much code duplication.

This makes both handlers much easier to read and results in
cleaner code flow.  The exception handler now only needs to care
about uncorrected errors, which also simplifies the handling of multiple
errors. The corrected poller also now always runs in standard interrupt
context and does not need to do anything special to handle NMI context.

Minor behaviour changes:
- MCG status is now not cleared on polling.
- Only the banks which had corrected errors get cleared on polling
- The exception handler only clears banks with errors now

v2: Forward port to new patch order. Add "uc" argument.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2009-02-19 14:52:20 -08:00
..
cpufreq fix: crash: IP: __bitmap_intersects+0x48/0x73 2009-01-20 00:17:01 +01:00
mcheck x86, mce: separate correct machine check poller and fatal exception handler 2009-02-19 14:52:20 -08:00
mtrr x86: tone down mtrr_trim_uncached_memory() warning 2009-01-29 11:45:35 +01:00
.gitignore Update .gitignore files for generated targets 2008-10-20 11:24:31 -07:00
addon_cpuid_features.c x86: fix intel x86_64 llc_shared_map/cpu_llc_id anomolies 2008-12-19 09:13:50 +01:00
amd.c x86: support always running TSC on Intel CPUs 2008-12-16 21:02:50 +01:00
bugs.c
bugs_64.c
centaur.c x86: move mtrr cpu cap setting early in early_init_xxxx 2008-09-06 17:50:55 +02:00
centaur_64.c x86: centaur_64.c remove duplicated setting of CONSTANT_TSC 2008-09-10 08:21:06 +02:00
cmpxchg.c
common.c x86: cleanup remaining cpumask_t ops in smpboot code 2009-01-04 15:39:26 +01:00
cpu.h x86: remove duplicated get_model_name() calling 2008-09-06 14:09:12 +02:00
cyrix.c x86: move mtrr cpu cap setting early in early_init_xxxx 2008-09-06 17:50:55 +02:00
hypervisor.c x86: hypervisor - fix sparse warnings 2008-11-23 11:11:52 +01:00
intel.c x86: add clflush before monitor for Intel 7400 series 2009-02-09 11:15:15 +01:00
intel_cacheinfo.c x86: add cache descriptors for Intel Core i7 2009-02-01 11:06:50 +01:00
Makefile Merge branch 'tracing-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-12-28 12:21:10 -08:00
mkcapflags.pl
perfctr-watchdog.c ftrace: mark lapic_wd_event() notrace 2008-10-14 10:34:36 +02:00
powerflags.c
proc.c x86/proc: fix /proc/cpuinfo cpu offline bug 2008-10-22 14:29:37 +02:00
transmeta.c x86: move transmeta cap read to early_init_transmeta() 2008-09-14 14:09:14 +02:00
umc.c x86: remove cpu_vendor_dev 2008-09-04 21:09:45 +02:00
vmware.c x86: vmware - fix sparse warnings 2008-11-23 11:02:36 +01:00