x86, mce: disable machine checks on suspend
commit973a2dd1d50a11d380086601f14e59116f93e8c5
authorAndi Kleen <andi@firstfloor.org>
Thu, 12 Feb 2009 12:39:32 +0000 (12 13:39 +0100)
committerH. Peter Anvin <hpa@linux.intel.com>
Tue, 17 Feb 2009 23:32:14 +0000 (17 15:32 -0800)
tree8fad8589e95a034b8c33da8f3c17056ae60c2294
parent07db1c140eb233971341396e492cc73d4280e698
x86, mce: disable machine checks on suspend

Impact: Bug fix

During suspend it is not reliable to process machine check
exceptions, because CPUs disappear but can still get machine check
broadcasts.  Also the system is slightly more likely to
machine check them, but the handler is typically not a position
to handle them in a meaningfull way.

So disable them during suspend and enable them during resume.

Also make sure they are always disabled on hot-unplugged CPUs.

This new code assumes that suspend always hotunplugs all
non BP CPUs.

v2: Remove the WARN_ONs Thomas objected to.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
arch/x86/kernel/cpu/mcheck/mce_64.c