[S390] Wire up new timerfd syscalls.
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Sat, 9 Feb 2008 17:24:28 +0000 (18:24 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Sat, 9 Feb 2008 17:24:37 +0000 (18:24 +0100)
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/kernel/compat_wrapper.S
arch/s390/kernel/syscalls.S
include/asm-s390/unistd.h

index 062c3d4c0394b48f4e8bbea8306bc538a03c2758..743d54f0b8dbb01e93c17f51be274bece0005f48 100644 (file)
@@ -1712,3 +1712,23 @@ sys_fallocate_wrapper:
        sllg    %r5,%r6,32              # get high word of 64bit loff_t
        l       %r5,164(%r15)           # get low word of 64bit loff_t
        jg      sys_fallocate
+
+       .globl  sys_timerfd_create_wrapper
+sys_timerfd_create_wrapper:
+       lgfr    %r2,%r2                 # int
+       lgfr    %r3,%r3                 # int
+       jg      sys_timerfd_create
+
+       .globl  compat_sys_timerfd_settime_wrapper
+compat_sys_timerfd_settime_wrapper:
+       lgfr    %r2,%r2                 # int
+       lgfr    %r3,%r3                 # int
+       llgtr   %r4,%r4                 # struct compat_itimerspec *
+       llgtr   %r5,%r5                 # struct compat_itimerspec *
+       jg      compat_sys_timerfd_settime
+
+       .globl  compat_sys_timerfd_gettime_wrapper
+compat_sys_timerfd_gettime_wrapper:
+       lgfr    %r2,%r2                 # int
+       llgtr   %r3,%r3                 # struct compat_itimerspec *
+       jg      compat_sys_timerfd_gettime
index 25eac7802fc4dba21980e643fc6fc2f0b76081bf..c87ec687d4c6ab5c68fdb4c803df24c724cdadb8 100644 (file)
@@ -327,3 +327,6 @@ SYSCALL(sys_utimensat,sys_utimensat,compat_sys_utimensat_wrapper)   /* 315 */
 SYSCALL(sys_signalfd,sys_signalfd,compat_sys_signalfd_wrapper)
 NI_SYSCALL                                             /* 317 old sys_timer_fd */
 SYSCALL(sys_eventfd,sys_eventfd,sys_eventfd_wrapper)
+SYSCALL(sys_timerfd_create,sys_timerfd_create,sys_timerfd_create_wrapper)
+SYSCALL(sys_timerfd_settime,sys_timerfd_settime,compat_sys_timerfd_settime_wrapper) /* 320 */
+SYSCALL(sys_timerfd_gettime,sys_timerfd_gettime,compat_sys_timerfd_gettime_wrapper)
index f04acb2670a8121e3d99121e65d00c285cbf34d1..583da807ea972fea3952571b53084bac82fbe702 100644 (file)
 #define __NR_signalfd          316
 #define __NR_timerfd           317
 #define __NR_eventfd           318
-#define NR_syscalls 319
+#define __NR_timerfd_create    319
+#define __NR_timerfd_settime   320
+#define __NR_timerfd_gettime   321
+#define NR_syscalls 322
 
 /* 
  * There are some system calls that are not present on 64 bit, some