#ifdef struct sigframe_sigcontext and struct sigcontext, so that only code
that really needs them, get them. XXX1: We need to fix the vm86 api. XXX2: We need to fix the ibcs2 signal delivery mechanism.
This commit is contained in:
parent
0b16bf9a36
commit
f7f3566b1e
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: frame.h,v 1.22 2003/09/06 22:05:49 christos Exp $ */
|
||||
/* $NetBSD: frame.h,v 1.23 2003/09/10 16:48:16 christos Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1998 The NetBSD Foundation, Inc.
|
||||
@ -148,6 +148,10 @@ struct switchframe {
|
||||
int sf_eip;
|
||||
};
|
||||
|
||||
#if (defined(COMPAT_16) || defined(COMPAT_IBCS2)) && defined(_KERNEL)
|
||||
/*
|
||||
* XXX: Really COMPAT_IBCS2 should not be using our old signal frame.
|
||||
*/
|
||||
/*
|
||||
* Signal frame
|
||||
*/
|
||||
@ -158,6 +162,7 @@ struct sigframe_sigcontext {
|
||||
struct sigcontext *sf_scp; /* "scp" argument for handler */
|
||||
struct sigcontext sf_sc; /* actual saved context */
|
||||
};
|
||||
#endif
|
||||
|
||||
struct sigframe_siginfo {
|
||||
int sf_ra; /* return address for handler */
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: signal.h,v 1.18 2003/09/06 22:05:49 christos Exp $ */
|
||||
/* $NetBSD: signal.h,v 1.19 2003/09/10 16:48:16 christos Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1982, 1986, 1989, 1991 Regents of the University of California.
|
||||
@ -81,6 +81,12 @@ struct sigcontext13 {
|
||||
};
|
||||
#endif
|
||||
|
||||
#if defined(COMPAT_16) || defined(_KERNEL)
|
||||
/*
|
||||
* We limit this to kernel use only, so that legacy code will break.
|
||||
* XXX: We need to fix vm86 syscall, not to use sigcontext but __gregset_t
|
||||
* + sigset_t, but that is an API change.
|
||||
*/
|
||||
struct sigcontext {
|
||||
int sc_gs;
|
||||
int sc_fs;
|
||||
@ -159,6 +165,7 @@ do { \
|
||||
(uc)->uc_mcontext.__gregs[_REG_TRAPNO] = (sc)->sc_trapno; \
|
||||
(uc)->uc_mcontext.__gregs[_REG_ERR] = (sc)->sc_err; \
|
||||
} while (/*CONSTCOND*/0)
|
||||
#endif
|
||||
|
||||
#define sc_sp sc_esp
|
||||
#define sc_fp sc_ebp
|
||||
|
Loading…
Reference in New Issue
Block a user