patch-2.2.18 linux/include/asm-s390/sigcontext.h
Next file: linux/include/asm-s390/sigp.h
Previous file: linux/include/asm-s390/semaphore.h
Back to the patch index
Back to the overall index
- Lines: 59
- Date:
Wed Nov 8 23:09:58 2000
- Orig file:
v2.2.17/include/asm-s390/sigcontext.h
- Orig date:
Fri Apr 21 12:46:49 2000
diff -u --new-file --recursive --exclude-from /usr/src/exclude v2.2.17/include/asm-s390/sigcontext.h linux/include/asm-s390/sigcontext.h
@@ -7,7 +7,10 @@
#ifndef _ASM_S390_SIGCONTEXT_H
#define _ASM_S390_SIGCONTEXT_H
-#include <asm/s390-regs-common.h>
+
+#define __NUM_GPRS 16
+#define __NUM_FPRS 16
+#define __NUM_ACRS 16
/*
Has to be at least _NSIG_WORDS from asm/signal.h
@@ -15,20 +18,39 @@
#define _SIGCONTEXT_NSIG 64
#define _SIGCONTEXT_NSIG_BPW 32
/* Size of stack frame allocated when calling signal handler. */
-#define __SIGNAL_FRAMESIZE STACK_FRAME_OVERHEAD
-#define _SIGCONTEXT_NSIG_WORDS (_SIGCONTEXT_NSIG / _SIGCONTEXT_NSIG_BPW)
-#define SIGMASK_COPY_SIZE (sizeof(unsigned long)*_SIGCONTEXT_NSIG_WORDS)
+#define __SIGNAL_FRAMESIZE 96
+#define _SIGCONTEXT_NSIG_WORDS (_SIGCONTEXT_NSIG / _SIGCONTEXT_NSIG_BPW)
+#define _SIGMASK_COPY_SIZE (sizeof(unsigned long)*_SIGCONTEXT_NSIG_WORDS)
+
+typedef struct
+{
+ unsigned long mask;
+ unsigned long addr;
+} _psw_t __attribute__ ((aligned(8)));
+
+typedef struct
+{
+ _psw_t psw;
+ unsigned long gprs[__NUM_GPRS];
+ unsigned int acrs[__NUM_ACRS];
+} _s390_regs_common __attribute__ ((packed));
+
+typedef struct
+{
+ unsigned int fpc;
+ double fprs[__NUM_FPRS];
+} _s390_fp_regs;
typedef struct
{
- s390_regs_common regs;
- s390_fp_regs fpregs;
-} sigregs;
+ _s390_regs_common regs;
+ _s390_fp_regs fpregs;
+} _sigregs;
struct sigcontext
{
unsigned long oldmask[_SIGCONTEXT_NSIG_WORDS];
- sigregs *sregs;
+ _sigregs *sregs;
};
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)