1
0
mirror of https://git.FreeBSD.org/src.git synced 2025-01-18 15:30:21 +00:00

Add support for i686 machine check trap.

This commit is contained in:
David Greenman 1996-08-11 17:41:25 +00:00
parent 150022d8fc
commit 11282a57ce
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=17521
8 changed files with 24 additions and 13 deletions

View File

@ -30,7 +30,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $Id: exception.s,v 1.17 1996/05/02 09:34:20 phk Exp $
* $Id: exception.s,v 1.18 1996/05/31 01:08:02 peter Exp $
*/
#include "npx.h" /* NNPX */
@ -113,6 +113,8 @@ IDTVEC(prot)
TRAP(T_PROTFLT)
IDTVEC(page)
TRAP(T_PAGEFLT)
IDTVEC(mchk)
pushl $0; TRAP(T_MCHK)
IDTVEC(rsvd)
pushl $0; TRAP(T_RESERVED)
IDTVEC(fpu)

View File

@ -30,7 +30,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $Id: exception.s,v 1.17 1996/05/02 09:34:20 phk Exp $
* $Id: exception.s,v 1.18 1996/05/31 01:08:02 peter Exp $
*/
#include "npx.h" /* NNPX */
@ -113,6 +113,8 @@ IDTVEC(prot)
TRAP(T_PROTFLT)
IDTVEC(page)
TRAP(T_PAGEFLT)
IDTVEC(mchk)
pushl $0; TRAP(T_MCHK)
IDTVEC(rsvd)
pushl $0; TRAP(T_RESERVED)
IDTVEC(fpu)

View File

@ -35,7 +35,7 @@
* SUCH DAMAGE.
*
* from: @(#)machdep.c 7.4 (Berkeley) 6/3/91
* $Id: machdep.c,v 1.194 1996/07/08 19:44:39 wollman Exp $
* $Id: machdep.c,v 1.195 1996/07/12 06:09:49 bde Exp $
*/
#include "npx.h"
@ -1101,7 +1101,7 @@ extern inthand_t
IDTVEC(div), IDTVEC(dbg), IDTVEC(nmi), IDTVEC(bpt), IDTVEC(ofl),
IDTVEC(bnd), IDTVEC(ill), IDTVEC(dna), IDTVEC(fpusegm),
IDTVEC(tss), IDTVEC(missing), IDTVEC(stk), IDTVEC(prot),
IDTVEC(page), IDTVEC(rsvd), IDTVEC(fpu), IDTVEC(align),
IDTVEC(page), IDTVEC(mchk), IDTVEC(rsvd), IDTVEC(fpu), IDTVEC(align),
IDTVEC(syscall), IDTVEC(int0x80_syscall);
void
@ -1200,6 +1200,7 @@ init386(first)
setidt(15, &IDTVEC(rsvd), SDT_SYS386TGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL));
setidt(16, &IDTVEC(fpu), SDT_SYS386TGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL));
setidt(17, &IDTVEC(align), SDT_SYS386TGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL));
setidt(18, &IDTVEC(mchk), SDT_SYS386TGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL));
setidt(0x80, &IDTVEC(int0x80_syscall),
SDT_SYS386TGT, SEL_UPL, GSEL(GCODE_SEL, SEL_KPL));

View File

@ -35,7 +35,7 @@
* SUCH DAMAGE.
*
* from: @(#)trap.c 7.4 (Berkeley) 5/13/91
* $Id: trap.c,v 1.79 1996/06/25 20:01:57 bde Exp $
* $Id: trap.c,v 1.80 1996/07/12 06:03:14 bde Exp $
*/
/*
@ -97,7 +97,7 @@ void dblfault_handler __P((void));
extern inthand_t IDTVEC(syscall);
#define MAX_TRAP_MSG 27
#define MAX_TRAP_MSG 28
static char *trap_msg[] = {
"", /* 0 unused */
"privileged instruction fault", /* 1 T_PRIVINFLT */
@ -127,6 +127,7 @@ static char *trap_msg[] = {
"invalid TSS fault", /* 25 T_TSSFLT */
"segment not present fault", /* 26 T_SEGNPFLT */
"stack fault", /* 27 T_STKFLT */
"machine check trap", /* 28 T_MCHK */
};
static void userret __P((struct proc *p, struct trapframe *frame,

View File

@ -30,7 +30,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $Id: exception.s,v 1.17 1996/05/02 09:34:20 phk Exp $
* $Id: exception.s,v 1.18 1996/05/31 01:08:02 peter Exp $
*/
#include "npx.h" /* NNPX */
@ -113,6 +113,8 @@ IDTVEC(prot)
TRAP(T_PROTFLT)
IDTVEC(page)
TRAP(T_PAGEFLT)
IDTVEC(mchk)
pushl $0; TRAP(T_MCHK)
IDTVEC(rsvd)
pushl $0; TRAP(T_RESERVED)
IDTVEC(fpu)

View File

@ -35,7 +35,7 @@
* SUCH DAMAGE.
*
* from: @(#)machdep.c 7.4 (Berkeley) 6/3/91
* $Id: machdep.c,v 1.194 1996/07/08 19:44:39 wollman Exp $
* $Id: machdep.c,v 1.195 1996/07/12 06:09:49 bde Exp $
*/
#include "npx.h"
@ -1101,7 +1101,7 @@ extern inthand_t
IDTVEC(div), IDTVEC(dbg), IDTVEC(nmi), IDTVEC(bpt), IDTVEC(ofl),
IDTVEC(bnd), IDTVEC(ill), IDTVEC(dna), IDTVEC(fpusegm),
IDTVEC(tss), IDTVEC(missing), IDTVEC(stk), IDTVEC(prot),
IDTVEC(page), IDTVEC(rsvd), IDTVEC(fpu), IDTVEC(align),
IDTVEC(page), IDTVEC(mchk), IDTVEC(rsvd), IDTVEC(fpu), IDTVEC(align),
IDTVEC(syscall), IDTVEC(int0x80_syscall);
void
@ -1200,6 +1200,7 @@ init386(first)
setidt(15, &IDTVEC(rsvd), SDT_SYS386TGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL));
setidt(16, &IDTVEC(fpu), SDT_SYS386TGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL));
setidt(17, &IDTVEC(align), SDT_SYS386TGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL));
setidt(18, &IDTVEC(mchk), SDT_SYS386TGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL));
setidt(0x80, &IDTVEC(int0x80_syscall),
SDT_SYS386TGT, SEL_UPL, GSEL(GCODE_SEL, SEL_KPL));

View File

@ -35,7 +35,7 @@
* SUCH DAMAGE.
*
* from: @(#)trap.c 7.4 (Berkeley) 5/13/91
* $Id: trap.c,v 1.79 1996/06/25 20:01:57 bde Exp $
* $Id: trap.c,v 1.80 1996/07/12 06:03:14 bde Exp $
*/
/*
@ -97,7 +97,7 @@ void dblfault_handler __P((void));
extern inthand_t IDTVEC(syscall);
#define MAX_TRAP_MSG 27
#define MAX_TRAP_MSG 28
static char *trap_msg[] = {
"", /* 0 unused */
"privileged instruction fault", /* 1 T_PRIVINFLT */
@ -127,6 +127,7 @@ static char *trap_msg[] = {
"invalid TSS fault", /* 25 T_TSSFLT */
"segment not present fault", /* 26 T_SEGNPFLT */
"stack fault", /* 27 T_STKFLT */
"machine check trap", /* 28 T_MCHK */
};
static void userret __P((struct proc *p, struct trapframe *frame,

View File

@ -35,7 +35,7 @@
* SUCH DAMAGE.
*
* from: @(#)trap.c 7.4 (Berkeley) 5/13/91
* $Id: trap.c,v 1.79 1996/06/25 20:01:57 bde Exp $
* $Id: trap.c,v 1.80 1996/07/12 06:03:14 bde Exp $
*/
/*
@ -97,7 +97,7 @@ void dblfault_handler __P((void));
extern inthand_t IDTVEC(syscall);
#define MAX_TRAP_MSG 27
#define MAX_TRAP_MSG 28
static char *trap_msg[] = {
"", /* 0 unused */
"privileged instruction fault", /* 1 T_PRIVINFLT */
@ -127,6 +127,7 @@ static char *trap_msg[] = {
"invalid TSS fault", /* 25 T_TSSFLT */
"segment not present fault", /* 26 T_SEGNPFLT */
"stack fault", /* 27 T_STKFLT */
"machine check trap", /* 28 T_MCHK */
};
static void userret __P((struct proc *p, struct trapframe *frame,