master
  1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
  2#ifndef _ASM_X86_SIGNAL_H
  3#define _ASM_X86_SIGNAL_H
  4
  5#ifndef __ASSEMBLER__
  6#include <linux/types.h>
  7
  8
  9/* Avoid too many header ordering problems.  */
 10struct siginfo;
 11
 12/* Here we must cater to libcs that poke about in kernel headers.  */
 13
 14#define NSIG		32
 15typedef unsigned long sigset_t;
 16
 17#endif /* __ASSEMBLER__ */
 18
 19
 20#define SIGHUP		 1
 21#define SIGINT		 2
 22#define SIGQUIT		 3
 23#define SIGILL		 4
 24#define SIGTRAP		 5
 25#define SIGABRT		 6
 26#define SIGIOT		 6
 27#define SIGBUS		 7
 28#define SIGFPE		 8
 29#define SIGKILL		 9
 30#define SIGUSR1		10
 31#define SIGSEGV		11
 32#define SIGUSR2		12
 33#define SIGPIPE		13
 34#define SIGALRM		14
 35#define SIGTERM		15
 36#define SIGSTKFLT	16
 37#define SIGCHLD		17
 38#define SIGCONT		18
 39#define SIGSTOP		19
 40#define SIGTSTP		20
 41#define SIGTTIN		21
 42#define SIGTTOU		22
 43#define SIGURG		23
 44#define SIGXCPU		24
 45#define SIGXFSZ		25
 46#define SIGVTALRM	26
 47#define SIGPROF		27
 48#define SIGWINCH	28
 49#define SIGIO		29
 50#define SIGPOLL		SIGIO
 51/*
 52#define SIGLOST		29
 53*/
 54#define SIGPWR		30
 55#define SIGSYS		31
 56#define	SIGUNUSED	31
 57
 58/* These should not be considered constants from userland.  */
 59#define SIGRTMIN	32
 60#define SIGRTMAX	_NSIG
 61
 62#define SA_RESTORER	0x04000000
 63
 64#define MINSIGSTKSZ	2048
 65#define SIGSTKSZ	8192
 66
 67#include <asm-generic/signal-defs.h>
 68
 69#ifndef __ASSEMBLER__
 70
 71
 72/* Here we must cater to libcs that poke about in kernel headers.  */
 73#ifdef __i386__
 74
 75struct sigaction {
 76	union {
 77	  __sighandler_t _sa_handler;
 78	  void (*_sa_sigaction)(int, struct siginfo *, void *);
 79	} _u;
 80	sigset_t sa_mask;
 81	unsigned long sa_flags;
 82	void (*sa_restorer)(void);
 83};
 84
 85#define sa_handler	_u._sa_handler
 86#define sa_sigaction	_u._sa_sigaction
 87
 88#else /* __i386__ */
 89
 90struct sigaction {
 91	__sighandler_t sa_handler;
 92	unsigned long sa_flags;
 93	__sigrestore_t sa_restorer;
 94	sigset_t sa_mask;		/* mask last for extensibility */
 95};
 96
 97#endif /* !__i386__ */
 98
 99typedef struct sigaltstack {
100	void *ss_sp;
101	int ss_flags;
102	__kernel_size_t ss_size;
103} stack_t;
104
105#endif /* __ASSEMBLER__ */
106
107#endif /* _ASM_X86_SIGNAL_H */