162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 262306a36Sopenharmony_ci#ifndef _UAPI__ASM_GENERIC_SIGNAL_H 362306a36Sopenharmony_ci#define _UAPI__ASM_GENERIC_SIGNAL_H 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci#include <linux/types.h> 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci#define _NSIG 64 862306a36Sopenharmony_ci#define _NSIG_BPW __BITS_PER_LONG 962306a36Sopenharmony_ci#define _NSIG_WORDS (_NSIG / _NSIG_BPW) 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci#define SIGHUP 1 1262306a36Sopenharmony_ci#define SIGINT 2 1362306a36Sopenharmony_ci#define SIGQUIT 3 1462306a36Sopenharmony_ci#define SIGILL 4 1562306a36Sopenharmony_ci#define SIGTRAP 5 1662306a36Sopenharmony_ci#define SIGABRT 6 1762306a36Sopenharmony_ci#define SIGIOT 6 1862306a36Sopenharmony_ci#define SIGBUS 7 1962306a36Sopenharmony_ci#define SIGFPE 8 2062306a36Sopenharmony_ci#define SIGKILL 9 2162306a36Sopenharmony_ci#define SIGUSR1 10 2262306a36Sopenharmony_ci#define SIGSEGV 11 2362306a36Sopenharmony_ci#define SIGUSR2 12 2462306a36Sopenharmony_ci#define SIGPIPE 13 2562306a36Sopenharmony_ci#define SIGALRM 14 2662306a36Sopenharmony_ci#define SIGTERM 15 2762306a36Sopenharmony_ci#define SIGSTKFLT 16 2862306a36Sopenharmony_ci#define SIGCHLD 17 2962306a36Sopenharmony_ci#define SIGCONT 18 3062306a36Sopenharmony_ci#define SIGSTOP 19 3162306a36Sopenharmony_ci#define SIGTSTP 20 3262306a36Sopenharmony_ci#define SIGTTIN 21 3362306a36Sopenharmony_ci#define SIGTTOU 22 3462306a36Sopenharmony_ci#define SIGURG 23 3562306a36Sopenharmony_ci#define SIGXCPU 24 3662306a36Sopenharmony_ci#define SIGXFSZ 25 3762306a36Sopenharmony_ci#define SIGVTALRM 26 3862306a36Sopenharmony_ci#define SIGPROF 27 3962306a36Sopenharmony_ci#define SIGWINCH 28 4062306a36Sopenharmony_ci#define SIGIO 29 4162306a36Sopenharmony_ci#define SIGPOLL SIGIO 4262306a36Sopenharmony_ci/* 4362306a36Sopenharmony_ci#define SIGLOST 29 4462306a36Sopenharmony_ci*/ 4562306a36Sopenharmony_ci#define SIGPWR 30 4662306a36Sopenharmony_ci#define SIGSYS 31 4762306a36Sopenharmony_ci#define SIGUNUSED 31 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci/* These should not be considered constants from userland. */ 5062306a36Sopenharmony_ci#define SIGRTMIN 32 5162306a36Sopenharmony_ci#ifndef SIGRTMAX 5262306a36Sopenharmony_ci#define SIGRTMAX _NSIG 5362306a36Sopenharmony_ci#endif 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ci#if !defined MINSIGSTKSZ || !defined SIGSTKSZ 5662306a36Sopenharmony_ci#define MINSIGSTKSZ 2048 5762306a36Sopenharmony_ci#define SIGSTKSZ 8192 5862306a36Sopenharmony_ci#endif 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci#ifndef __ASSEMBLY__ 6162306a36Sopenharmony_citypedef struct { 6262306a36Sopenharmony_ci unsigned long sig[_NSIG_WORDS]; 6362306a36Sopenharmony_ci} sigset_t; 6462306a36Sopenharmony_ci 6562306a36Sopenharmony_ci/* not actually used, but required for linux/syscalls.h */ 6662306a36Sopenharmony_citypedef unsigned long old_sigset_t; 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ci#include <asm-generic/signal-defs.h> 6962306a36Sopenharmony_ci 7062306a36Sopenharmony_ci#ifdef SA_RESTORER 7162306a36Sopenharmony_ci#define __ARCH_HAS_SA_RESTORER 7262306a36Sopenharmony_ci#endif 7362306a36Sopenharmony_ci 7462306a36Sopenharmony_ci#ifndef __KERNEL__ 7562306a36Sopenharmony_cistruct sigaction { 7662306a36Sopenharmony_ci __sighandler_t sa_handler; 7762306a36Sopenharmony_ci unsigned long sa_flags; 7862306a36Sopenharmony_ci#ifdef SA_RESTORER 7962306a36Sopenharmony_ci __sigrestore_t sa_restorer; 8062306a36Sopenharmony_ci#endif 8162306a36Sopenharmony_ci sigset_t sa_mask; /* mask last for extensibility */ 8262306a36Sopenharmony_ci}; 8362306a36Sopenharmony_ci#endif 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_citypedef struct sigaltstack { 8662306a36Sopenharmony_ci void __user *ss_sp; 8762306a36Sopenharmony_ci int ss_flags; 8862306a36Sopenharmony_ci __kernel_size_t ss_size; 8962306a36Sopenharmony_ci} stack_t; 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_ci#endif /* __ASSEMBLY__ */ 9262306a36Sopenharmony_ci 9362306a36Sopenharmony_ci#endif /* _UAPI__ASM_GENERIC_SIGNAL_H */ 94