162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Modified 1998-2001, 2003 462306a36Sopenharmony_ci * David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co 562306a36Sopenharmony_ci * 662306a36Sopenharmony_ci * Unfortunately, this file is being included by bits/signal.h in 762306a36Sopenharmony_ci * glibc-2.x. Hence the #ifdef __KERNEL__ ugliness. 862306a36Sopenharmony_ci */ 962306a36Sopenharmony_ci#ifndef _UAPI_ASM_IA64_SIGNAL_H 1062306a36Sopenharmony_ci#define _UAPI_ASM_IA64_SIGNAL_H 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci#define SIGHUP 1 1462306a36Sopenharmony_ci#define SIGINT 2 1562306a36Sopenharmony_ci#define SIGQUIT 3 1662306a36Sopenharmony_ci#define SIGILL 4 1762306a36Sopenharmony_ci#define SIGTRAP 5 1862306a36Sopenharmony_ci#define SIGABRT 6 1962306a36Sopenharmony_ci#define SIGIOT 6 2062306a36Sopenharmony_ci#define SIGBUS 7 2162306a36Sopenharmony_ci#define SIGFPE 8 2262306a36Sopenharmony_ci#define SIGKILL 9 2362306a36Sopenharmony_ci#define SIGUSR1 10 2462306a36Sopenharmony_ci#define SIGSEGV 11 2562306a36Sopenharmony_ci#define SIGUSR2 12 2662306a36Sopenharmony_ci#define SIGPIPE 13 2762306a36Sopenharmony_ci#define SIGALRM 14 2862306a36Sopenharmony_ci#define SIGTERM 15 2962306a36Sopenharmony_ci#define SIGSTKFLT 16 3062306a36Sopenharmony_ci#define SIGCHLD 17 3162306a36Sopenharmony_ci#define SIGCONT 18 3262306a36Sopenharmony_ci#define SIGSTOP 19 3362306a36Sopenharmony_ci#define SIGTSTP 20 3462306a36Sopenharmony_ci#define SIGTTIN 21 3562306a36Sopenharmony_ci#define SIGTTOU 22 3662306a36Sopenharmony_ci#define SIGURG 23 3762306a36Sopenharmony_ci#define SIGXCPU 24 3862306a36Sopenharmony_ci#define SIGXFSZ 25 3962306a36Sopenharmony_ci#define SIGVTALRM 26 4062306a36Sopenharmony_ci#define SIGPROF 27 4162306a36Sopenharmony_ci#define SIGWINCH 28 4262306a36Sopenharmony_ci#define SIGIO 29 4362306a36Sopenharmony_ci#define SIGPOLL SIGIO 4462306a36Sopenharmony_ci/* 4562306a36Sopenharmony_ci#define SIGLOST 29 4662306a36Sopenharmony_ci*/ 4762306a36Sopenharmony_ci#define SIGPWR 30 4862306a36Sopenharmony_ci#define SIGSYS 31 4962306a36Sopenharmony_ci/* signal 31 is no longer "unused", but the SIGUNUSED macro remains for backwards compatibility */ 5062306a36Sopenharmony_ci#define SIGUNUSED 31 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ci/* These should not be considered constants from userland. */ 5362306a36Sopenharmony_ci#define SIGRTMIN 32 5462306a36Sopenharmony_ci#define SIGRTMAX _NSIG 5562306a36Sopenharmony_ci 5662306a36Sopenharmony_ci#define SA_RESTORER 0x04000000 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci/* 5962306a36Sopenharmony_ci * The minimum stack size needs to be fairly large because we want to 6062306a36Sopenharmony_ci * be sure that an app compiled for today's CPUs will continue to run 6162306a36Sopenharmony_ci * on all future CPU models. The CPU model matters because the signal 6262306a36Sopenharmony_ci * frame needs to have space for the complete machine state, including 6362306a36Sopenharmony_ci * all physical stacked registers. The number of physical stacked 6462306a36Sopenharmony_ci * registers is CPU model dependent, but given that the width of 6562306a36Sopenharmony_ci * ar.rsc.loadrs is 14 bits, we can assume that they'll never take up 6662306a36Sopenharmony_ci * more than 16KB of space. 6762306a36Sopenharmony_ci */ 6862306a36Sopenharmony_ci#if 1 6962306a36Sopenharmony_ci /* 7062306a36Sopenharmony_ci * This is a stupid typo: the value was _meant_ to be 131072 (0x20000), but I typed it 7162306a36Sopenharmony_ci * in wrong. ;-( To preserve backwards compatibility, we leave the kernel at the 7262306a36Sopenharmony_ci * incorrect value and fix libc only. 7362306a36Sopenharmony_ci */ 7462306a36Sopenharmony_ci# define MINSIGSTKSZ 131027 /* min. stack size for sigaltstack() */ 7562306a36Sopenharmony_ci#else 7662306a36Sopenharmony_ci# define MINSIGSTKSZ 131072 /* min. stack size for sigaltstack() */ 7762306a36Sopenharmony_ci#endif 7862306a36Sopenharmony_ci#define SIGSTKSZ 262144 /* default stack size for sigaltstack() */ 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci#include <asm-generic/signal-defs.h> 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ci# ifndef __ASSEMBLY__ 8462306a36Sopenharmony_ci 8562306a36Sopenharmony_ci# include <linux/types.h> 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci/* Avoid too many header ordering problems. */ 8862306a36Sopenharmony_cistruct siginfo; 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_citypedef struct sigaltstack { 9162306a36Sopenharmony_ci void __user *ss_sp; 9262306a36Sopenharmony_ci int ss_flags; 9362306a36Sopenharmony_ci __kernel_size_t ss_size; 9462306a36Sopenharmony_ci} stack_t; 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci# endif /* !__ASSEMBLY__ */ 9862306a36Sopenharmony_ci#endif /* _UAPI_ASM_IA64_SIGNAL_H */ 99