Messages in this thread Patch in this message | | | From | Andi Kleen <> | Subject | [PATCH] [10/28] x86: MCE: Remove oops_begin() use in 64bit machine check | Date | Tue, 7 Apr 2009 17:07:51 +0200 (CEST) |
| |
On closer examination it turns out oops_begin is not a good idea in a machine check panic. All oops_begin does it so check for recursive/parallel oopses and implement the "wait on oops" heuristic. But there's actually no good reason to lock machine checks against oopses or prevent them from recursion. Also "wait on oops" does not really make sense for a machine check either.
So just remove it.
Replace it with a manual bust_spinlocks/console_verbose.
Signed-off-by: Andi Kleen <ak@linux.intel.com>
--- 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 2009-04-07 16:09:59.000000000 +0200 +++ linux/arch/x86/kernel/cpu/mcheck/mce_64.c 2009-04-07 16:43:13.000000000 +0200 @@ -151,7 +151,8 @@ { int i; - oops_begin(); + bust_spinlocks(1); + console_verbose(); for (i = 0; i < MCE_LOG_LEN; i++) { unsigned long tsc = mcelog.entry[i].tsc;
| |