use old sigmask in sigcontext and old sigreturn syscall in Ultrix

emulation mode
This commit is contained in:
drochner 1998-10-02 19:25:33 +00:00
parent 0959469679
commit 41c0179c3c
2 changed files with 23 additions and 4 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: machdep.c,v 1.61 1998/09/30 14:10:00 ragge Exp $ */
/* $NetBSD: machdep.c,v 1.62 1998/10/02 19:25:33 drochner Exp $ */
/*
* Copyright (c) 1994, 1998 Ludd, University of Lule}, Sweden.
@ -50,6 +50,7 @@
#include "opt_atalk.h"
#include "opt_ns.h"
#include "opt_compat_netbsd.h"
#include "opt_compat_ultrix.h"
#include <sys/param.h>
#include <sys/systm.h>
@ -487,7 +488,7 @@ consinit()
#endif
}
#ifdef COMPAT_13
#if defined(COMPAT_13) || defined(COMPAT_ULTRIX)
int
compat_13_sys_sigreturn(p, v, retval)
struct proc *p;
@ -623,7 +624,7 @@ sendsig(catcher, sig, mask, code)
gsigctx.sc_onstack = psp->ps_sigstk.ss_flags & SS_ONSTACK;
gsigctx.sc_mask = *mask;
#ifdef COMPAT_13
#if defined(COMPAT_13) || defined(COMPAT_ULTRIX)
native_sigset_to_sigset13(mask, &gsigctx.__sc_mask13);
#endif

View File

@ -1,4 +1,4 @@
/* $NetBSD: subr.s,v 1.27 1998/09/30 14:10:00 ragge Exp $ */
/* $NetBSD: subr.s,v 1.28 1998/10/02 19:25:33 drochner Exp $ */
/*
* Copyright (c) 1994 Ludd, University of Lule}, Sweden.
@ -35,6 +35,10 @@
#include "assym.h"
#include "opt_ddb.h"
#include "opt_uvm.h"
#include "opt_compat_ultrix.h"
#ifdef COMPAT_ULTRIX
#include <compat/ultrix/ultrix_syscall.h>
#endif
#define JSBENTRY(x) .globl x ; .align 2 ; x :
@ -97,6 +101,20 @@ _sigcode: pushr $0x3f
.align 2
_esigcode:
#ifdef COMPAT_ULTRIX
.globl _ultrix_sigcode,_ultrix_esigcode
_ultrix_sigcode: pushr $0x3f
subl2 $0xc,sp
movl 0x24(sp),r0
calls $3,(r0)
popr $0x3f
chmk $ULTRIX_SYS_sigreturn
chmk $SYS_exit
halt
.align 2
_ultrix_esigcode:
#endif
.globl _idsptch, _eidsptch
_idsptch: pushr $0x3f
pushl $1