mirror of
				https://github.com/qemu/qemu.git
				synced 2025-10-30 19:15:42 +00:00 
			
		
		
		
	 ce437484fc
			
		
	
	
		ce437484fc
		
	
	
	
	
		
			
			Some platforms used the wrong definition of stack_t where the flags and size fields were swapped or where the flags field had type ulong instead of int. Due to the presence of padding space in the structure and the prevalence of little-endian machines this problem went unnoticed for a long time. The type definitions have been cross-checked with the ones defined in the Linux kernel v5.9, plus some older versions for a few architecture that have been removed and Xilinx's kernel fork for NiosII [1]. The bsd-user headers remain unchanged as I don't know if they are wrong or not. [1] https://github.com/Xilinx/linux-xlnx/blob/master/arch/nios2/include/uapi/asm/signal.h Signed-off-by: Giuseppe Musacchio <thatlemon@gmail.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Message-Id: <e9d47692-ee92-009f-6007-0abc3f502b97@gmail.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
		
			
				
	
	
		
			96 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			96 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef ALPHA_TARGET_SIGNAL_H
 | |
| #define ALPHA_TARGET_SIGNAL_H
 | |
| 
 | |
| #define TARGET_SIGHUP            1
 | |
| #define TARGET_SIGINT            2
 | |
| #define TARGET_SIGQUIT           3
 | |
| #define TARGET_SIGILL            4
 | |
| #define TARGET_SIGTRAP           5
 | |
| #define TARGET_SIGABRT           6
 | |
| #define TARGET_SIGSTKFLT         7 /* actually SIGEMT */
 | |
| #define TARGET_SIGFPE            8
 | |
| #define TARGET_SIGKILL           9
 | |
| #define TARGET_SIGBUS           10
 | |
| #define TARGET_SIGSEGV          11
 | |
| #define TARGET_SIGSYS           12
 | |
| #define TARGET_SIGPIPE          13
 | |
| #define TARGET_SIGALRM          14
 | |
| #define TARGET_SIGTERM          15
 | |
| #define TARGET_SIGURG           16
 | |
| #define TARGET_SIGSTOP          17
 | |
| #define TARGET_SIGTSTP          18
 | |
| #define TARGET_SIGCONT          19
 | |
| #define TARGET_SIGCHLD          20
 | |
| #define TARGET_SIGTTIN          21
 | |
| #define TARGET_SIGTTOU          22
 | |
| #define TARGET_SIGIO            23
 | |
| #define TARGET_SIGXCPU          24
 | |
| #define TARGET_SIGXFSZ          25
 | |
| #define TARGET_SIGVTALRM        26
 | |
| #define TARGET_SIGPROF          27
 | |
| #define TARGET_SIGWINCH         28
 | |
| #define TARGET_SIGPWR           29 /* actually SIGINFO */
 | |
| #define TARGET_SIGUSR1          30
 | |
| #define TARGET_SIGUSR2          31
 | |
| #define TARGET_SIGRTMIN         32
 | |
| 
 | |
| #define TARGET_SIG_BLOCK         1
 | |
| #define TARGET_SIG_UNBLOCK       2
 | |
| #define TARGET_SIG_SETMASK       3
 | |
| 
 | |
| /* this struct defines a stack used during syscall handling */
 | |
| 
 | |
| typedef struct target_sigaltstack {
 | |
|     abi_ulong ss_sp;
 | |
|     abi_int ss_flags;
 | |
|     abi_ulong ss_size;
 | |
| } target_stack_t;
 | |
| 
 | |
| 
 | |
| /*
 | |
|  * sigaltstack controls
 | |
|  */
 | |
| #define TARGET_SS_ONSTACK	1
 | |
| #define TARGET_SS_DISABLE	2
 | |
| 
 | |
| #define TARGET_SA_ONSTACK       0x00000001
 | |
| #define TARGET_SA_RESTART       0x00000002
 | |
| #define TARGET_SA_NOCLDSTOP     0x00000004
 | |
| #define TARGET_SA_NODEFER       0x00000008
 | |
| #define TARGET_SA_RESETHAND     0x00000010
 | |
| #define TARGET_SA_NOCLDWAIT     0x00000020 /* not supported yet */
 | |
| #define TARGET_SA_SIGINFO       0x00000040
 | |
| 
 | |
| #define TARGET_MINSIGSTKSZ	4096
 | |
| #define TARGET_SIGSTKSZ		16384
 | |
| 
 | |
| /* From <asm/gentrap.h>.  */
 | |
| #define TARGET_GEN_INTOVF      -1      /* integer overflow */
 | |
| #define TARGET_GEN_INTDIV      -2      /* integer division by zero */
 | |
| #define TARGET_GEN_FLTOVF      -3      /* fp overflow */
 | |
| #define TARGET_GEN_FLTDIV      -4      /* fp division by zero */
 | |
| #define TARGET_GEN_FLTUND      -5      /* fp underflow */
 | |
| #define TARGET_GEN_FLTINV      -6      /* invalid fp operand */
 | |
| #define TARGET_GEN_FLTINE      -7      /* inexact fp operand */
 | |
| #define TARGET_GEN_DECOVF      -8      /* decimal overflow (for COBOL??) */
 | |
| #define TARGET_GEN_DECDIV      -9      /* decimal division by zero */
 | |
| #define TARGET_GEN_DECINV      -10     /* invalid decimal operand */
 | |
| #define TARGET_GEN_ROPRAND     -11     /* reserved operand */
 | |
| #define TARGET_GEN_ASSERTERR   -12     /* assertion error */
 | |
| #define TARGET_GEN_NULPTRERR   -13     /* null pointer error */
 | |
| #define TARGET_GEN_STKOVF      -14     /* stack overflow */
 | |
| #define TARGET_GEN_STRLENERR   -15     /* string length error */
 | |
| #define TARGET_GEN_SUBSTRERR   -16     /* substring error */
 | |
| #define TARGET_GEN_RANGERR     -17     /* range error */
 | |
| #define TARGET_GEN_SUBRNG      -18
 | |
| #define TARGET_GEN_SUBRNG1     -19
 | |
| #define TARGET_GEN_SUBRNG2     -20
 | |
| #define TARGET_GEN_SUBRNG3     -21
 | |
| #define TARGET_GEN_SUBRNG4     -22
 | |
| #define TARGET_GEN_SUBRNG5     -23
 | |
| #define TARGET_GEN_SUBRNG6     -24
 | |
| #define TARGET_GEN_SUBRNG7     -25
 | |
| 
 | |
| #define TARGET_ARCH_HAS_SETUP_FRAME
 | |
| #endif /* ALPHA_TARGET_SIGNAL_H */
 |