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-defs.h (2988B)


      1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
      2#ifndef __ASM_GENERIC_SIGNAL_DEFS_H
      3#define __ASM_GENERIC_SIGNAL_DEFS_H
      4
      5#include <linux/compiler.h>
      6
      7/*
      8 * SA_FLAGS values:
      9 *
     10 * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
     11 * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
     12 * SA_SIGINFO delivers the signal with SIGINFO structs.
     13 * SA_ONSTACK indicates that a registered stack_t will be used.
     14 * SA_RESTART flag to get restarting signals (which were the default long ago)
     15 * SA_NODEFER prevents the current signal from being masked in the handler.
     16 * SA_RESETHAND clears the handler when the signal is delivered.
     17 * SA_UNSUPPORTED is a flag bit that will never be supported. Kernels from
     18 * before the introduction of SA_UNSUPPORTED did not clear unknown bits from
     19 * sa_flags when read using the oldact argument to sigaction and rt_sigaction,
     20 * so this bit allows flag bit support to be detected from userspace while
     21 * allowing an old kernel to be distinguished from a kernel that supports every
     22 * flag bit.
     23 * SA_EXPOSE_TAGBITS exposes an architecture-defined set of tag bits in
     24 * siginfo.si_addr.
     25 *
     26 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
     27 * Unix names RESETHAND and NODEFER respectively.
     28 */
     29#ifndef SA_NOCLDSTOP
     30#define SA_NOCLDSTOP	0x00000001
     31#endif
     32#ifndef SA_NOCLDWAIT
     33#define SA_NOCLDWAIT	0x00000002
     34#endif
     35#ifndef SA_SIGINFO
     36#define SA_SIGINFO	0x00000004
     37#endif
     38/* 0x00000008 used on alpha, mips, parisc */
     39/* 0x00000010 used on alpha, parisc */
     40/* 0x00000020 used on alpha, parisc, sparc */
     41/* 0x00000040 used on alpha, parisc */
     42/* 0x00000080 used on parisc */
     43/* 0x00000100 used on sparc */
     44/* 0x00000200 used on sparc */
     45#define SA_UNSUPPORTED	0x00000400
     46#define SA_EXPOSE_TAGBITS	0x00000800
     47/* 0x00010000 used on mips */
     48/* 0x00800000 used for internal SA_IMMUTABLE */
     49/* 0x01000000 used on x86 */
     50/* 0x02000000 used on x86 */
     51/*
     52 * New architectures should not define the obsolete
     53 *	SA_RESTORER	0x04000000
     54 */
     55#ifndef SA_ONSTACK
     56#define SA_ONSTACK	0x08000000
     57#endif
     58#ifndef SA_RESTART
     59#define SA_RESTART	0x10000000
     60#endif
     61#ifndef SA_NODEFER
     62#define SA_NODEFER	0x40000000
     63#endif
     64#ifndef SA_RESETHAND
     65#define SA_RESETHAND	0x80000000
     66#endif
     67
     68#define SA_NOMASK	SA_NODEFER
     69#define SA_ONESHOT	SA_RESETHAND
     70
     71#ifndef SIG_BLOCK
     72#define SIG_BLOCK          0	/* for blocking signals */
     73#endif
     74#ifndef SIG_UNBLOCK
     75#define SIG_UNBLOCK        1	/* for unblocking signals */
     76#endif
     77#ifndef SIG_SETMASK
     78#define SIG_SETMASK        2	/* for setting the signal mask */
     79#endif
     80
     81#ifndef __ASSEMBLY__
     82typedef void __signalfn_t(int);
     83typedef __signalfn_t __user *__sighandler_t;
     84
     85typedef void __restorefn_t(void);
     86typedef __restorefn_t __user *__sigrestore_t;
     87
     88#define SIG_DFL	((__force __sighandler_t)0)	/* default signal handling */
     89#define SIG_IGN	((__force __sighandler_t)1)	/* ignore signal */
     90#define SIG_ERR	((__force __sighandler_t)-1)	/* error return from signal */
     91#endif
     92
     93#endif /* __ASM_GENERIC_SIGNAL_DEFS_H */