* linux/syscall.h: Declare sys_signalfd.
* linux/syscallent.h: Add entry for signalfd.
* linux/x86_64/syscallent.h: Likewise.
* signal.c (sys_signalfd): New function.
int sys_mbind(), sys_get_mempolicy(), sys_set_mempolicy(), sys_move_pages();
int sys_arch_prctl();
int sys_io_setup(), sys_io_submit(), sys_io_cancel(), sys_io_getevents(), sys_io_destroy();
-int sys_utimensat(), sys_epoll_pwait();
+int sys_utimensat(), sys_epoll_pwait(), sys_signalfd();
/* sys_socketcall subcalls */
{ 5, 0, printargs, "SYS_318" }, /* 318 */
{ 5, TD, sys_epoll_pwait, "epoll_pwait" }, /* 319 */
{ 4, TD|TF, sys_utimensat, "utimensat" }, /* 320 */
- { 5, 0, printargs, "SYS_321" }, /* 321 */
+ { 3, TD|TS, sys_signalfd, "signalfd" }, /* 321 */
{ 5, 0, printargs, "SYS_322" }, /* 322 */
{ 5, 0, printargs, "SYS_323" }, /* 323 */
{ 5, 0, printargs, "SYS_324" }, /* 324 */
{ 6, 0, sys_move_pages, "move_pages" }, /* 279 */
{ 4, TD|TF, sys_utimensat, "utimensat" }, /* 280 */
{ 5, TD, sys_epoll_pwait, "epoll_pwait" }, /* 281 */
+ { 3, TD|TS, sys_signalfd, "signalfd" }, /* 282 */
return 0;
}
+int
+sys_signalfd(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ tprintf("%ld, ", tcp->u_arg[0]);
+ print_sigset(tcp, tcp->u_arg[1], 1);
+ tprintf("%lu", tcp->u_arg[2]);
+ }
+ return 0;
+}
#endif /* LINUX */