Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 1 Oct 2002 13:14:22 -0700 (PDT)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 18492 for review
Message-ID:  <200210012014.g91KEMNY078476@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://people.freebsd.org/~peter/p4db/chv.cgi?CH=18492

Change 18492 by jhb@jhb_laptop on 2002/10/01 13:13:59

	Add a workaround for a PPro Errata with the idea basically
	taken from NetBSD.

Affected files ...

.. //depot/projects/smpng/sys/i386/i386/exception.s#10 edit
.. //depot/projects/smpng/sys/i386/i386/machdep.c#45 edit

Differences ...

==== //depot/projects/smpng/sys/i386/i386/exception.s#10 (text+ko) ====

@@ -138,10 +138,17 @@
 	pushl $0; TRAP(T_ARITHTRAP)
 IDTVEC(align)
 	TRAP(T_ALIGNFLT)
-
 IDTVEC(xmm)
 	pushl $0; TRAP(T_XMMFLT)
 	
+IDTVEC(trap0f)
+	/*
+	 * Workaround for PentiumPro Errata 5AP.  Go to
+	 * http://developer.intel.com/design/pro/specupdt/242689.htm
+	 * to get the PDF errata list.
+	 */
+	iret
+
 	/*
 	 * alltraps entry point.  Interrupts are enabled if this was a trap
 	 * gate (TGT), else disabled if this was an interrupt gate (IGT).

==== //depot/projects/smpng/sys/i386/i386/machdep.c#45 (text+ko) ====

@@ -1222,7 +1222,7 @@
 
 extern inthand_t
 	IDTVEC(div), IDTVEC(dbg), IDTVEC(nmi), IDTVEC(bpt), IDTVEC(ofl),
-	IDTVEC(bnd), IDTVEC(ill), IDTVEC(dna), IDTVEC(fpusegm),
+	IDTVEC(bnd), IDTVEC(ill), IDTVEC(dna), IDTVEC(fpusegm), IDTVEC(trap0f),
 	IDTVEC(tss), IDTVEC(missing), IDTVEC(stk), IDTVEC(prot),
 	IDTVEC(page), IDTVEC(mchk), IDTVEC(rsvd), IDTVEC(fpu), IDTVEC(align),
 	IDTVEC(xmm), IDTVEC(lcall_syscall), IDTVEC(int0x80_syscall);
@@ -1759,7 +1759,7 @@
 	    GSEL(GCODE_SEL, SEL_KPL));
 	setidt(14, &IDTVEC(page),  SDT_SYS386IGT, SEL_KPL,
 	    GSEL(GCODE_SEL, SEL_KPL));
-	setidt(15, &IDTVEC(rsvd),  SDT_SYS386TGT, SEL_KPL,
+	setidt(15, &IDTVEC(trap0f),  SDT_SYS386TGT, SEL_KPL,
 	    GSEL(GCODE_SEL, SEL_KPL));
 	setidt(16, &IDTVEC(fpu),  SDT_SYS386TGT, SEL_KPL,
 	    GSEL(GCODE_SEL, SEL_KPL));

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe p4-projects" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200210012014.g91KEMNY078476>