cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

signal.h (3058B)


      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 */