1 /* SPDX-License-Identifier: GPL-2.0-only */ 1 2 /* 3 * Copyright (C) 2012 ARM Ltd. 4 */ 5 #ifndef __ASM_SIGNAL32_H 6 #define __ASM_SIGNAL32_H 7 8 #ifdef CONFIG_COMPAT 9 #include <linux/compat.h> 10 11 struct compat_sigcontext { 12 /* We always set these two fields to 0 13 compat_ulong_t trap_n 14 compat_ulong_t error_ 15 16 compat_ulong_t oldmas 17 compat_ulong_t arm_r0 18 compat_ulong_t arm_r1 19 compat_ulong_t arm_r2 20 compat_ulong_t arm_r3 21 compat_ulong_t arm_r4 22 compat_ulong_t arm_r5 23 compat_ulong_t arm_r6 24 compat_ulong_t arm_r7 25 compat_ulong_t arm_r8 26 compat_ulong_t arm_r9 27 compat_ulong_t arm_r1 28 compat_ulong_t arm_fp 29 compat_ulong_t arm_ip 30 compat_ulong_t arm_sp 31 compat_ulong_t arm_lr 32 compat_ulong_t arm_pc 33 compat_ulong_t arm_cp 34 compat_ulong_t fault_ 35 }; 36 37 struct compat_ucontext { 38 compat_ulong_t uc_fla 39 compat_uptr_t uc_lin 40 compat_stack_t uc_sta 41 struct compat_sigcontext uc_mco 42 compat_sigset_t uc_sig 43 int __unus 44 compat_ulong_t uc_reg 45 }; 46 47 struct compat_sigframe { 48 struct compat_ucontext uc; 49 compat_ulong_t retcode[2]; 50 }; 51 52 struct compat_rt_sigframe { 53 struct compat_siginfo info; 54 struct compat_sigframe sig; 55 }; 56 57 int compat_setup_frame(int usig, struct ksigna 58 struct pt_regs *regs); 59 int compat_setup_rt_frame(int usig, struct ksi 60 struct pt_regs *regs 61 62 void compat_setup_restart_syscall(struct pt_re 63 #else 64 65 static inline int compat_setup_frame(int usid, 66 sigset_t 67 { 68 return -ENOSYS; 69 } 70 71 static inline int compat_setup_rt_frame(int us 72 struct 73 { 74 return -ENOSYS; 75 } 76 77 static inline void compat_setup_restart_syscal 78 { 79 } 80 #endif /* CONFIG_COMPAT */ 81 #endif /* __ASM_SIGNAL32_H */ 82
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.