Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/hppa/include We still need struct sigcontext for lo...



details:   https://anonhg.NetBSD.org/src/rev/f4e0ba2df23b
branches:  trunk
changeset: 1024548:f4e0ba2df23b
user:      christos <christos%NetBSD.org@localhost>
date:      Thu Oct 28 11:07:07 2021 +0000

description:
We still need struct sigcontext for longjmp.

diffstat:

 sys/arch/hppa/include/signal.h |  25 ++++++++++++++++++++++++-
 1 files changed, 24 insertions(+), 1 deletions(-)

diffs (37 lines):

diff -r bc736b1d75e4 -r f4e0ba2df23b sys/arch/hppa/include/signal.h
--- a/sys/arch/hppa/include/signal.h    Thu Oct 28 10:46:05 2021 +0000
+++ b/sys/arch/hppa/include/signal.h    Thu Oct 28 11:07:07 2021 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: signal.h,v 1.10 2021/10/27 02:34:00 thorpej Exp $      */
+/*     $NetBSD: signal.h,v 1.11 2021/10/28 11:07:07 christos Exp $     */
 
 /*     $OpenBSD: signal.h,v 1.1 1998/06/23 19:45:27 mickey Exp $       */
 
@@ -41,4 +41,27 @@
 #include <machine/trap.h>      /* codes for SIGILL, SIGFPE */
 #endif
 
+#if defined(_LIBC)
+/*
+ * Information pushed on stack when a signal is delivered.
+ * This is used by the kernel to restore state following
+ * execution of the signal handler.  It is also made available
+ * to the handler to allow it to restore state properly if
+ * a non-standard exit is performed.
+ */
+struct sigcontext {
+       int     sc_onstack;             /* sigstack state to restore */
+       int     __sc_mask13;            /* signal mask to restore (old style) */
+       int     sc_sp;                  /* sp to restore */
+       int     sc_fp;                  /* fp to restore */
+       int     sc_ap;                  /* ap to restore */
+       int     sc_pcsqh;               /* pc space queue (head) to restore */
+       int     sc_pcoqh;               /* pc offset queue (head) to restore */
+       int     sc_pcsqt;               /* pc space queue (tail) to restore */
+       int     sc_pcoqt;               /* pc offset queue (tail) to restore */
+       int     sc_ps;                  /* psl to restore */
+       sigset_t sc_mask;               /* signal mask to restore (new style) */
+};
+#endif
+
 #endif /* _HPPA_SIGNAL_H__ */



Home | Main Index | Thread Index | Old Index