From e14923e42ffe180ed7774dafaf9010345a12e068 Mon Sep 17 00:00:00 2001 From: jhb Date: Mon, 2 Apr 2012 15:07:22 +0000 Subject: Make machine check exception logging more readable. On newer Intel systems, an uncorrected ECC error tends to fire on all CPUs in a package simultaneously and the current printf hacks are not sufficient to make the messages legible. Instead, use the existing mca_lock spinlock to serialize calls to mca_log() and change the machine check code to panic directly when an unrecoverable error is encoutered rather than falling back to a trap_fatal() call in trap() (which adds nearly a screen-full of logging messages that aren't useful for machine checks). MFC after: 2 weeks --- sys/i386/i386/trap.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'sys/i386') diff --git a/sys/i386/i386/trap.c b/sys/i386/i386/trap.c index bd6019a..41495b4 100644 --- a/sys/i386/i386/trap.c +++ b/sys/i386/i386/trap.c @@ -254,8 +254,7 @@ trap(struct trapframe *frame) #endif if (type == T_MCHK) { - if (!mca_intr()) - trap_fatal(frame, 0); + mca_intr(); goto out; } -- cgit v1.1