diff --git a/include/syscall-codes.h b/include/syscall-codes.h index fc7578011..eb0e30139 100644 --- a/include/syscall-codes.h +++ b/include/syscall-codes.h @@ -12,6 +12,7 @@ #define __NR_mprotect 10 #define __NR_munmap 11 #define __NR_brk 12 +#define __NR_rt_sigreturn 15 #define __NR_mincore 27 #define __NR_dup 32 #define __NR_dup2 33 diff --git a/include/syscall.h b/include/syscall.h index 8f4cae812..9269a270a 100644 --- a/include/syscall.h +++ b/include/syscall.h @@ -156,6 +156,15 @@ static long sys_read(unsigned long fd, void *buf, unsigned long count) return syscall3(__NR_read, fd, (unsigned long)buf, count); } +/* + * Note this call expects a signal frame on stack + * (regs->sp) so be very carefull here! + */ +static long sys_rt_sigreturn(void) +{ + return syscall0(__NR_rt_sigreturn); +} + #else /* CONFIG_X86_64 */ # error x86-32 bit mode not yet implemented #endif /* CONFIG_X86_64 */