1#ifndef _ASM_PARISC_SIGNAL_H 2#define _ASM_PARISC_SIGNAL_H 3 4#define SIGHUP 1 5#define SIGINT 2 6#define SIGQUIT 3 7#define SIGILL 4 8#define SIGTRAP 5 9#define SIGABRT 6 10#define SIGIOT 6 11#define SIGEMT 7 12#define SIGFPE 8 13#define SIGKILL 9 14#define SIGBUS 10 15#define SIGSEGV 11 16#define SIGSYS 12 /* Linux doesn't use this */ 17#define SIGPIPE 13 18#define SIGALRM 14 19#define SIGTERM 15 20#define SIGUSR1 16 21#define SIGUSR2 17 22#define SIGCHLD 18 23#define SIGPWR 19 24#define SIGVTALRM 20 25#define SIGPROF 21 26#define SIGIO 22 27#define SIGPOLL SIGIO 28#define SIGWINCH 23 29#define SIGSTOP 24 30#define SIGTSTP 25 31#define SIGCONT 26 32#define SIGTTIN 27 33#define SIGTTOU 28 34#define SIGURG 29 35#define SIGLOST 30 /* Linux doesn't use this either */ 36#define SIGUNUSED 31 37#define SIGRESERVE SIGUNUSED 38 39#define SIGXCPU 33 40#define SIGXFSZ 34 41#define SIGSTKFLT 36 42 43/* These should not be considered constants from userland. */ 44#define SIGRTMIN 37 45#define SIGRTMAX _NSIG /* it's 44 under HP/UX */ 46 47/* 48 * SA_FLAGS values: 49 * 50 * SA_ONSTACK indicates that a registered stack_t will be used. 51 * SA_RESTART flag to get restarting signals (which were the default long ago) 52 * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop. 53 * SA_RESETHAND clears the handler when the signal is delivered. 54 * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies. 55 * SA_NODEFER prevents the current signal from being masked in the handler. 56 * 57 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single 58 * Unix names RESETHAND and NODEFER respectively. 59 */ 60#define SA_ONSTACK 0x00000001 61#define SA_RESETHAND 0x00000004 62#define SA_NOCLDSTOP 0x00000008 63#define SA_SIGINFO 0x00000010 64#define SA_NODEFER 0x00000020 65#define SA_RESTART 0x00000040 66#define SA_NOCLDWAIT 0x00000080 67#define _SA_SIGGFAULT 0x00000100 /* HPUX */ 68 69#define SA_NOMASK SA_NODEFER 70#define SA_ONESHOT SA_RESETHAND 71 72#define SA_RESTORER 0x04000000 /* obsolete -- ignored */ 73 74/* 75 * sigaltstack controls 76 */ 77#define SS_ONSTACK 1 78#define SS_DISABLE 2 79 80#define MINSIGSTKSZ 2048 81#define SIGSTKSZ 8192 82 83#ifdef __KERNEL__ 84 85#define _NSIG 64 86/* bits-per-word, where word apparently means 'long' not 'int' */ 87#define _NSIG_BPW BITS_PER_LONG 88#define _NSIG_WORDS (_NSIG / _NSIG_BPW) 89 90#endif /* __KERNEL__ */ 91 92#define SIG_BLOCK 0 /* for blocking signals */ 93#define SIG_UNBLOCK 1 /* for unblocking signals */ 94#define SIG_SETMASK 2 /* for setting the signal mask */ 95 96#define SIG_DFL ((__sighandler_t)0) /* default signal handling */ 97#define SIG_IGN ((__sighandler_t)1) /* ignore signal */ 98#define SIG_ERR ((__sighandler_t)-1) /* error return from signal */ 99 100# ifndef __ASSEMBLY__ 101 102# include <linux/types.h> 103 104/* Avoid too many header ordering problems. */ 105struct siginfo; 106 107/* Type of a signal handler. */ 108#ifdef CONFIG_64BIT 109/* function pointers on 64-bit parisc are pointers to little structs and the 110 * compiler doesn't support code which changes or tests the address of 111 * the function in the little struct. This is really ugly -PB 112 */ 113typedef char __user *__sighandler_t; 114#else 115typedef void __signalfn_t(int); 116typedef __signalfn_t __user *__sighandler_t; 117#endif 118 119typedef struct sigaltstack { 120 void __user *ss_sp; 121 int ss_flags; 122 size_t ss_size; 123} stack_t; 124 125#ifdef __KERNEL__ 126 127/* Most things should be clean enough to redefine this at will, if care 128 is taken to make libc match. */ 129 130typedef unsigned long old_sigset_t; /* at least 32 bits */ 131 132typedef struct { 133 /* next_signal() assumes this is a long - no choice */ 134 unsigned long sig[_NSIG_WORDS]; 135} sigset_t; 136 137struct sigaction { 138 __sighandler_t sa_handler; 139 unsigned long sa_flags; 140 sigset_t sa_mask; /* mask last for extensibility */ 141}; 142 143struct k_sigaction { 144 struct sigaction sa; 145}; 146 147#define ptrace_signal_deliver(regs, cookie) do { } while (0) 148 149#include <asm/sigcontext.h> 150 151#endif /* __KERNEL__ */ 152#endif /* !__ASSEMBLY */ 153#endif /* _ASM_PARISC_SIGNAL_H */ 154