summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Weingartner <weingart@cvs.openbsd.org>1999-03-21 03:30:02 +0000
committerTobias Weingartner <weingart@cvs.openbsd.org>1999-03-21 03:30:02 +0000
commit4650d473b33558ca5ff984df9c7d9ac0093acff9 (patch)
tree29fd770c485070dfdcc1f54522e010f8b16c353f
parent5ef6a2f3e3934b90b08eacaacb8a83f0fbe607cc (diff)
Fix TSS fault handling.
-rw-r--r--sys/arch/i386/i386/trap.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/arch/i386/i386/trap.c b/sys/arch/i386/i386/trap.c
index d25a0c31d86..ebf99fb4e55 100644
--- a/sys/arch/i386/i386/trap.c
+++ b/sys/arch/i386/i386/trap.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: trap.c,v 1.30 1999/02/26 04:42:14 art Exp $ */
+/* $OpenBSD: trap.c,v 1.31 1999/03/21 03:30:01 weingart Exp $ */
/* $NetBSD: trap.c,v 1.95 1996/05/05 06:50:02 mycroft Exp $ */
#undef DEBUG
@@ -326,6 +326,11 @@ trap(frame)
trapsignal(p, SIGSEGV, vftype, SEGV_MAPERR, sv);
goto out;
+ case T_TSSFLT|T_USER:
+ sv.sival_int = frame.tf_eip;
+ trapsignal(p, SIGBUS, vftype, BUS_OBJERR, sv);
+ goto out;
+
case T_SEGNPFLT|T_USER:
case T_STKFLT|T_USER:
sv.sival_int = frame.tf_eip;