From 67c7bb9c04ed76649b6be0484dcfaa84fa554bcd Mon Sep 17 00:00:00 2001 From: eivind Date: Tue, 28 Apr 1998 18:15:08 +0000 Subject: Translate T_PROTFLT to SIGSEGV instead of SIGBUS when running under Linux emulation. This make Allegro Common Lisp 4.3 work under FreeBSD! Submitted by: Fred Gilham Commented on by: bde, dg, msmith, tg Hoping he got everything right: eivind --- sys/amd64/amd64/trap.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'sys/amd64/amd64/trap.c') diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c index 7f0f801..3325d32 100644 --- a/sys/amd64/amd64/trap.c +++ b/sys/amd64/amd64/trap.c @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $Id: trap.c,v 1.125 1998/03/30 09:48:27 phk Exp $ + * $Id: trap.c,v 1.126 1998/04/15 17:45:07 bde Exp $ */ /* @@ -545,6 +545,10 @@ kernel_trap: return; } + /* Translate fault for emulators (e.g. Linux) */ + if (*p->p_sysent->sv_transtrap) + i = (*p->p_sysent->sv_transtrap)(i, type); + trapsignal(p, i, ucode); #ifdef DEBUG -- cgit v1.1