More comments on the new signal frame/trampoline
This commit is contained in:
parent
0cdadad2cd
commit
c56e133974
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: locore.S,v 1.136 2002/04/12 18:44:57 manu Exp $ */
|
||||
/* $NetBSD: locore.S,v 1.137 2002/04/13 10:52:59 manu Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1992, 1993
|
||||
|
@ -207,13 +207,13 @@ XLEAF(linux_esigcode)
|
|||
LEAF_NOPROFILE(irix_sigcode)
|
||||
# lw t1,32(sp)
|
||||
# lw t0,28(sp)
|
||||
# sw t1,0(t0)
|
||||
# sw t1,0(t0) # *sf.isf_uep = sf.isf_errno
|
||||
lw a0,40(sp)
|
||||
lw a1,44(sp)
|
||||
lw a2,36(sp)
|
||||
li v0, IRIX_SYS_sigreturn + SYSCALL_SHIFT
|
||||
syscall # sigreturn(scp, ucp, sig)
|
||||
break 0 # just in case sigreturn fails
|
||||
syscall # sigreturn(sf.isf_scp, sf.isf_ucp, sf.isf_signo)
|
||||
break 0 # just in case sigreturn fails
|
||||
END(irix_sigcode)
|
||||
XLEAF(irix_esigcode)
|
||||
#undef SYSCALL_SHIFT
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: irix_signal.c,v 1.12 2002/04/12 18:44:58 manu Exp $ */
|
||||
/* $NetBSD: irix_signal.c,v 1.13 2002/04/13 10:53:00 manu Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1994, 2001-2002 The NetBSD Foundation, Inc.
|
||||
|
@ -37,7 +37,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: irix_signal.c,v 1.12 2002/04/12 18:44:58 manu Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: irix_signal.c,v 1.13 2002/04/13 10:53:00 manu Exp $");
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/signal.h>
|
||||
|
@ -233,7 +233,8 @@ irix_sendsig(catcher, sig, mask, code)
|
|||
* errno in userspace. This is used by the signal
|
||||
* trampoline. No idea how to emulate this for now...
|
||||
*/
|
||||
/* sf.isf_errno = 0; */
|
||||
/* sf.isf_uep = NULL; */
|
||||
/* sf.isf_errno = 0 */
|
||||
|
||||
/*
|
||||
* Compute the new stack address after copying sigframe (hold by sp),
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: irix_signal.h,v 1.8 2002/04/12 18:44:58 manu Exp $ */
|
||||
/* $NetBSD: irix_signal.h,v 1.9 2002/04/13 10:53:00 manu Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2001-2002 The NetBSD Foundation, Inc.
|
||||
|
@ -160,8 +160,8 @@ typedef struct irix_irix5_siginfo {
|
|||
|
||||
struct irix_sigframe {
|
||||
int isf_pad1[7];
|
||||
int *isf_errno;
|
||||
int isf_pad2;
|
||||
int *isf_uep; /* Pointer to errno in userspace */
|
||||
int isf_errno;
|
||||
int isf_signo;
|
||||
struct irix_sigcontext *isf_scp;
|
||||
struct irix_ucontext *isf_ucp;
|
||||
|
|
Loading…
Reference in New Issue