File Index
Files and directories
Sign in
FILE

signal.h

File preview with syntax highlighting.

linux-6.19.14/arch/s390/include/uapi/asm/signal.h C
  1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
  2/*
  3 *  S390 version
  4 *
  5 *  Derived from "include/asm-i386/signal.h"
  6 */
  7
  8#ifndef _UAPI_ASMS390_SIGNAL_H
  9#define _UAPI_ASMS390_SIGNAL_H
 10
 11#include <linux/types.h>
 12#include <linux/time.h>
 13
 14/* Avoid too many header ordering problems.  */
 15struct siginfo;
 16struct pt_regs;
 17
 18#ifndef __KERNEL__
 19/* Here we must cater to libcs that poke about in kernel headers.  */
 20
 21#define NSIG            32
 22typedef unsigned long sigset_t;
 23
 24#endif /* __KERNEL__ */
 25
 26#define SIGHUP           1
 27#define SIGINT           2
 28#define SIGQUIT          3
 29#define SIGILL           4
 30#define SIGTRAP          5
 31#define SIGABRT          6
 32#define SIGIOT           6
 33#define SIGBUS           7
 34#define SIGFPE           8
 35#define SIGKILL          9
 36#define SIGUSR1         10
 37#define SIGSEGV         11
 38#define SIGUSR2         12
 39#define SIGPIPE         13
 40#define SIGALRM         14
 41#define SIGTERM         15
 42#define SIGSTKFLT       16
 43#define SIGCHLD         17
 44#define SIGCONT         18
 45#define SIGSTOP         19
 46#define SIGTSTP         20
 47#define SIGTTIN         21
 48#define SIGTTOU         22
 49#define SIGURG          23
 50#define SIGXCPU         24
 51#define SIGXFSZ         25
 52#define SIGVTALRM       26
 53#define SIGPROF         27
 54#define SIGWINCH        28
 55#define SIGIO           29
 56#define SIGPOLL         SIGIO
 57/*
 58#define SIGLOST         29
 59*/
 60#define SIGPWR          30
 61#define SIGSYS		31
 62#define SIGUNUSED       31
 63
 64/* These should not be considered constants from userland.  */
 65#define SIGRTMIN        32
 66#define SIGRTMAX        _NSIG
 67
 68#define SA_RESTORER     0x04000000
 69
 70#define MINSIGSTKSZ     2048
 71#define SIGSTKSZ        8192
 72
 73#include <asm-generic/signal-defs.h>
 74
 75#ifndef __KERNEL__
 76
 77/*
 78 * There are two system calls in regard to sigaction, sys_rt_sigaction
 79 * and sys_sigaction. Internally the kernel uses the struct old_sigaction
 80 * for the older sys_sigaction system call, and the kernel version of the
 81 * struct sigaction for the newer sys_rt_sigaction.
 82 *
 83 * The uapi definition for struct sigaction has made a strange distinction
 84 * between 31-bit and 64-bit in the past. For 64-bit the uapi structure
 85 * looks like the kernel struct sigaction, but for 31-bit it used to
 86 * look like the kernel struct old_sigaction. That practically made the
 87 * structure unusable for either system call. To get around this problem
 88 * the glibc always had its own definitions for the sigaction structures.
 89 *
 90 * The current struct sigaction uapi definition below is suitable for the
 91 * sys_rt_sigaction system call only.
 92 */
 93struct sigaction {
 94        union {
 95          __sighandler_t _sa_handler;
 96          void (*_sa_sigaction)(int, struct siginfo *, void *);
 97        } _u;
 98        unsigned long sa_flags;
 99        void (*sa_restorer)(void);
100	sigset_t sa_mask;
101};
102
103#define sa_handler      _u._sa_handler
104#define sa_sigaction    _u._sa_sigaction
105
106#endif /* __KERNEL__ */
107
108typedef struct sigaltstack {
109        void __user *ss_sp;
110        int ss_flags;
111	__kernel_size_t ss_size;
112} stack_t;
113
114
115#endif /* _UAPI_ASMS390_SIGNAL_H */
~/ Read-only file preview.