]> granicus.if.org Git - strace/commitdiff
2008-05-19 Roland McGrath <roland@redhat.com>
authorRoland McGrath <roland@redhat.com>
Tue, 20 May 2008 04:56:13 +0000 (04:56 +0000)
committerRoland McGrath <roland@redhat.com>
Tue, 20 May 2008 04:56:13 +0000 (04:56 +0000)
* time.c (sys_timerfd_create): New function.
(sys_timerfd_settime, sys_timerfd_gettime): New functions.
* linux/syscall.h: Declare them.
* linux/syscallent.h: Update entries for those syscalls.
From Kyle McMartin <kyle@mcmartin.ca>.

time.c

diff --git a/time.c b/time.c
index 676aace4818c55c53f344b183d9a5988f296e20b..651ec40205e94eb46a878e904ea0443e0d07de51 100644 (file)
--- a/time.c
+++ b/time.c
@@ -989,4 +989,41 @@ struct tcb *tcp;
        }
        return 0;
 }
+
+int
+sys_timerfd_create(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               printxval(clocknames, tcp->u_arg[0], "CLOCK_???");
+               tprintf(", ");
+               printflags(timerfdflags, tcp->u_arg[1], "TFD_???");
+       }
+       return 0;
+}
+
+int
+sys_timerfd_settime(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               tprintf("%ld, ", tcp->u_arg[0]);
+               printflags(timerfdflags, tcp->u_arg[1], "TFD_???");
+               tprintf(", ");
+               printitv(tcp, tcp->u_arg[2]);
+               tprintf(", ");
+               printitv(tcp, tcp->u_arg[3]);
+       }
+       return 0;
+}
+
+int
+sys_timerfd_gettime(struct tcb *tcp)
+{
+       if (entering(tcp)) {
+               tprintf("%ld, ", tcp->u_arg[0]);
+               tprintf(", ");
+               printitv(tcp, tcp->u_arg[1]);
+       }
+       return 0;
+}
+
 #endif /* LINUX */