Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/i386/isa SA_SIGINFO changes
details: https://anonhg.NetBSD.org/src/rev/8c553e17b6e2
branches: trunk
changeset: 551460:8c553e17b6e2
user: christos <christos%NetBSD.org@localhost>
date: Sat Sep 06 23:15:35 2003 +0000
description:
SA_SIGINFO changes
diffstat:
sys/arch/i386/isa/npx.c | 10 +++++++---
1 files changed, 7 insertions(+), 3 deletions(-)
diffs (45 lines):
diff -r a7dcabf25245 -r 8c553e17b6e2 sys/arch/i386/isa/npx.c
--- a/sys/arch/i386/isa/npx.c Sat Sep 06 22:56:47 2003 +0000
+++ b/sys/arch/i386/isa/npx.c Sat Sep 06 23:15:35 2003 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: npx.c,v 1.94 2003/08/07 16:28:01 agc Exp $ */
+/* $NetBSD: npx.c,v 1.95 2003/09/06 23:15:35 christos Exp $ */
/*-
* Copyright (c) 1991 The Regents of the University of California.
@@ -67,7 +67,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: npx.c,v 1.94 2003/08/07 16:28:01 agc Exp $");
+__KERNEL_RCSID(0, "$NetBSD: npx.c,v 1.95 2003/09/06 23:15:35 christos Exp $");
#if 0
#define IPRINTF(x) printf x
@@ -362,6 +362,7 @@
struct intrframe *frame = &iframe;
struct npx_softc *sc;
int code;
+ ksiginfo_t ksi;
sc = npx_softc;
@@ -434,6 +435,9 @@
/*
* Pass exception to process.
*/
+ memset(&ksi, 0, sizeof(ksi));
+ ksi.ksi_signo = SIGFPE;
+ ksi.ksi_addr = (void *)frame->if_eip;
if (USERMODE(frame->if_cs, frame->if_eflags)) {
/*
* Interrupt is essentially a trap, so we can afford to call
@@ -456,7 +460,7 @@
#else
code = 0; /* XXX */
#endif
- trapsignal(l, SIGFPE, code);
+ trapsignal(l, &ksi);
} else {
/*
* This is a nested interrupt. This should only happen when
Home |
Main Index |
Thread Index |
Old Index