use the real linux_rt_sigreturn.
This commit is contained in:
parent
28f544c476
commit
76da28320e
|
@ -1,4 +1,4 @@
|
||||||
# $NetBSD: genassym.cf,v 1.37 2003/05/04 22:01:58 fvdl Exp $
|
# $NetBSD: genassym.cf,v 1.38 2003/07/03 21:25:45 christos Exp $
|
||||||
|
|
||||||
#
|
#
|
||||||
# Copyright (c) 1998 The NetBSD Foundation, Inc.
|
# Copyright (c) 1998 The NetBSD Foundation, Inc.
|
||||||
|
@ -225,7 +225,7 @@ ifdef COMPAT_LINUX
|
||||||
define LINUX_SIGF_HANDLER offsetof(struct linux_sigframe, sf_handler)
|
define LINUX_SIGF_HANDLER offsetof(struct linux_sigframe, sf_handler)
|
||||||
define LINUX_SIGF_SC offsetof(struct linux_sigframe, sf_sc)
|
define LINUX_SIGF_SC offsetof(struct linux_sigframe, sf_sc)
|
||||||
define LINUX_RT_SIGF_HANDLER offsetof(struct linux_rt_sigframe, sf_handler)
|
define LINUX_RT_SIGF_HANDLER offsetof(struct linux_rt_sigframe, sf_handler)
|
||||||
define LINUX_RT_SIGF_SC offsetof(struct linux_rt_sigframe, sf_sc)
|
define LINUX_RT_SIGF_UC offsetof(struct linux_rt_sigframe, sf_uc)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef COMPAT_FREEBSD
|
ifdef COMPAT_FREEBSD
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $NetBSD: linux_sigcode.S,v 1.2 2002/12/06 00:00:20 christos Exp $ */
|
/* $NetBSD: linux_sigcode.S,v 1.3 2003/07/03 21:25:45 christos Exp $ */
|
||||||
|
|
||||||
/*-
|
/*-
|
||||||
* Copyright (c) 1998 The NetBSD Foundation, Inc.
|
* Copyright (c) 1998 The NetBSD Foundation, Inc.
|
||||||
|
@ -101,13 +101,13 @@ NENTRY(linux_sigcode)
|
||||||
movl $LINUX_SYS_exit,%eax
|
movl $LINUX_SYS_exit,%eax
|
||||||
int $0x80 # exit if sigreturn fails
|
int $0x80 # exit if sigreturn fails
|
||||||
|
|
||||||
/* LINTSTUB: Var: char linux_rt_sigcode[1], linux_rt_esigcode[1]; */
|
/* LINTSTUB: Var: char linux_rt_sigcode[1]; */
|
||||||
NENTRY(linux_rt_sigcode)
|
NENTRY(linux_rt_sigcode)
|
||||||
call *LINUX_RT_SIGF_HANDLER(%esp)
|
call *LINUX_RT_SIGF_HANDLER(%esp)
|
||||||
leal LINUX_RT_SIGF_SC(%esp),%ebx # scp (the call may have clobbered the
|
leal LINUX_RT_SIGF_UC(%esp),%ebx # scp (the call may have clobbered the
|
||||||
# copy at SIGF_SCP(%esp))
|
# copy at SIGF_SCP(%esp))
|
||||||
pushl %eax # junk to fake return address
|
pushl %eax # junk to fake return address
|
||||||
movl $LINUX_SYS_sigreturn,%eax
|
movl $LINUX_SYS_rt_sigreturn,%eax
|
||||||
int $0x80 # enter kernel with args on stack
|
int $0x80 # enter kernel with args on stack
|
||||||
movl $LINUX_SYS_exit,%eax
|
movl $LINUX_SYS_exit,%eax
|
||||||
int $0x80 # exit if sigreturn fails
|
int $0x80 # exit if sigreturn fails
|
||||||
|
|
Loading…
Reference in New Issue