Don't use oops_begin in 64bit mce code It is not really useful to lock machine checks against oopses. And machine checks normally don't nest, so they don't need their own locking. Just call bust_spinlock/console_verbose directly. Signed-off-by: Andi Kleen --- arch/x86/kernel/cpu/mcheck/mce_64.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) Index: linux/arch/x86/kernel/cpu/mcheck/mce_64.c =================================================================== --- linux.orig/arch/x86/kernel/cpu/mcheck/mce_64.c +++ linux/arch/x86/kernel/cpu/mcheck/mce_64.c @@ -133,7 +133,8 @@ static void mce_panic(char *msg, struct { int i; - oops_begin(); + console_verbose(); + bust_spinlocks(1); for (i = 0; i < MCE_LOG_LEN; i++) { unsigned long tsc = mcelog.entry[i].tsc;