• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 static void
arch_sigreturn(struct tcb * tcp)2 arch_sigreturn(struct tcb *tcp)
3 {
4 #define SIZEOF_STRUCT_SIGINFO 128
5 #define SIZEOF_STRUCT_SIGCONTEXT (21 * 4)
6 #define OFFSETOF_STRUCT_UCONTEXT_UC_SIGMASK (5 * 4 + SIZEOF_STRUCT_SIGCONTEXT)
7 
8 	const unsigned long addr =
9 #ifdef AARCH64
10 		tcp->currpers == 0 ?
11 			(*aarch64_sp_ptr + SIZEOF_STRUCT_SIGINFO +
12 			 offsetof(ucontext_t, uc_sigmask)) :
13 #endif
14 			(*arm_sp_ptr +
15 			 OFFSETOF_STRUCT_UCONTEXT_UC_SIGMASK);
16 	tprints("{mask=");
17 	print_sigset_addr(tcp, addr);
18 	tprints("}");
19 }
20