This patch fixes two little bugs in the IA32 machine check handler, it's against
2.2.17pre7.

The first bug is that the MC0_MISC is at address 403H, the second is that
wmb() as implemented in IA32 doesn't serialize, a lock on the bus as
given from mb() will serialize instead.

--- 2.2.18pre7/arch/i386/kernel/bluesmoke.c.~1~ Thu Sep 14 19:28:06 2000
+++ 2.2.18pre7/arch/i386/kernel/bluesmoke.c     Sat Sep 16 17:59:02 2000
@@ -37,7 +37,7 @@
                        high&=~(1<<31);
                        if(high&(1<<27))
                        {
-                               rdmsr(0x402+i*4, alow, ahigh);
+                               rdmsr(0x403+i*4, alow, ahigh);
                                printk("[%08x%08x]", alow, ahigh);
                        }
                        if(high&(1<<26))
@@ -49,7 +49,7 @@
                        /* Clear it */
                        wrmsr(0x401+i*4, 0UL, 0UL);
                        /* Serialize */
-                       wmb();
+                       mb();
                }
        }
        

Andrea
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/

Reply via email to