From owner-p4-projects Tue Oct 1 13:14:25 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1B8C437B404; Tue, 1 Oct 2002 13:14:23 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CDA7D37B401 for ; Tue, 1 Oct 2002 13:14:22 -0700 (PDT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 88BA643E3B for ; Tue, 1 Oct 2002 13:14:22 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from freefall.freebsd.org (perforce@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.6/8.12.6) with ESMTP id g91KEMCo078479 for ; Tue, 1 Oct 2002 13:14:22 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by freefall.freebsd.org (8.12.6/8.12.6/Submit) id g91KEMNY078476 for perforce@freebsd.org; Tue, 1 Oct 2002 13:14:22 -0700 (PDT) Date: Tue, 1 Oct 2002 13:14:22 -0700 (PDT) Message-Id: <200210012014.g91KEMNY078476@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin Subject: PERFORCE change 18492 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG 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