Messages in this thread Patch in this message | | | Date | Tue, 29 Jan 2002 13:25:32 -0500 | From | Pete Wyckoff <> | Subject | [patch] typo in i386 machine check code |
| |
Our old PIII Xeons are dying, as shown by more frequent panics due to bad hardware:
kernel: CPU 3: Machine Check Exception: 0000000000000007 kernel: Bank 0: b678600022000800 at 3678600022000800
The part after the "at" is supposed to be the memory address which was being accessed when the fault was detected. Instead the code prints out the status field again (with the high bit removed for no apparent reason).
Patch is against 2.5.2.
-- Pete
--- linux/arch/i386/kernel/bluesmoke.c.orig Tue Jan 29 12:04:46 2002 +++ linux/arch/i386/kernel/bluesmoke.c Tue Jan 29 12:04:48 2002 @@ -40,21 +40,21 @@ static void intel_machine_check(struct p high&=~(1<<31); if(high&(1<<27)) { rdmsr(MSR_IA32_MC0_MISC+i*4, alow, ahigh); printk("[%08x%08x]", alow, ahigh); } if(high&(1<<26)) { rdmsr(MSR_IA32_MC0_ADDR+i*4, alow, ahigh); printk(" at %08x%08x", - high, low); + ahigh, alow); } printk("\n"); /* Clear it */ wrmsr(MSR_IA32_MC0_STATUS+i*4, 0UL, 0UL); /* Serialize */ wmb(); } } if(recover&2) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |