diff options
| author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2008-08-01 10:39:15 -0400 |
|---|---|---|
| committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2008-08-01 10:39:32 -0400 |
| commit | 519620cc3d723d41522191ebd150fba4a3790296 (patch) | |
| tree | 9dbe6e5718e4d882b2da2346fbd2a91bd62cf0c9 | |
| parent | 883e512c99fc398d1b2b5e8e92b6bacff2551756 (diff) | |
[S390] Wire up new syscalls.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
| -rw-r--r-- | arch/s390/kernel/compat_wrapper.S | 37 | ||||
| -rw-r--r-- | arch/s390/kernel/syscalls.S | 6 | ||||
| -rw-r--r-- | include/asm-s390/unistd.h | 8 |
3 files changed, 50 insertions, 1 deletions
diff --git a/arch/s390/kernel/compat_wrapper.S b/arch/s390/kernel/compat_wrapper.S index d003a6e16afb..328a20e880b5 100644 --- a/arch/s390/kernel/compat_wrapper.S +++ b/arch/s390/kernel/compat_wrapper.S | |||
| @@ -1732,3 +1732,40 @@ compat_sys_timerfd_gettime_wrapper: | |||
| 1732 | lgfr %r2,%r2 # int | 1732 | lgfr %r2,%r2 # int |
| 1733 | llgtr %r3,%r3 # struct compat_itimerspec * | 1733 | llgtr %r3,%r3 # struct compat_itimerspec * |
| 1734 | jg compat_sys_timerfd_gettime | 1734 | jg compat_sys_timerfd_gettime |
| 1735 | |||
| 1736 | .globl compat_sys_signalfd4_wrapper | ||
| 1737 | compat_sys_signalfd4_wrapper: | ||
| 1738 | lgfr %r2,%r2 # int | ||
| 1739 | llgtr %r3,%r3 # compat_sigset_t * | ||
| 1740 | llgfr %r4,%r4 # compat_size_t | ||
| 1741 | lgfr %r5,%r5 # int | ||
| 1742 | jg compat_sys_signalfd4 | ||
| 1743 | |||
| 1744 | .globl sys_eventfd2_wrapper | ||
| 1745 | sys_eventfd2_wrapper: | ||
| 1746 | llgfr %r2,%r2 # unsigned int | ||
| 1747 | lgfr %r3,%r3 # int | ||
| 1748 | jg sys_eventfd2 | ||
| 1749 | |||
| 1750 | .globl sys_inotify_init1_wrapper | ||
| 1751 | sys_inotify_init1_wrapper: | ||
| 1752 | lgfr %r2,%r2 # int | ||
| 1753 | jg sys_inotify_init1 | ||
| 1754 | |||
| 1755 | .globl sys_pipe2_wrapper | ||
| 1756 | sys_pipe2_wrapper: | ||
| 1757 | llgtr %r2,%r2 # u32 * | ||
| 1758 | lgfr %r3,%r3 # int | ||
| 1759 | jg sys_pipe2 # branch to system call | ||
| 1760 | |||
| 1761 | .globl sys_dup3_wrapper | ||
| 1762 | sys_dup3_wrapper: | ||
| 1763 | llgfr %r2,%r2 # unsigned int | ||
| 1764 | llgfr %r3,%r3 # unsigned int | ||
| 1765 | lgfr %r4,%r4 # int | ||
| 1766 | jg sys_dup3 # branch to system call | ||
| 1767 | |||
| 1768 | .globl sys_epoll_create1_wrapper | ||
| 1769 | sys_epoll_create1_wrapper: | ||
| 1770 | lgfr %r2,%r2 # int | ||
| 1771 | jg sys_epoll_create1 # branch to system call | ||
diff --git a/arch/s390/kernel/syscalls.S b/arch/s390/kernel/syscalls.S index c87ec687d4c6..c66d35e55142 100644 --- a/arch/s390/kernel/syscalls.S +++ b/arch/s390/kernel/syscalls.S | |||
| @@ -330,3 +330,9 @@ SYSCALL(sys_eventfd,sys_eventfd,sys_eventfd_wrapper) | |||
| 330 | SYSCALL(sys_timerfd_create,sys_timerfd_create,sys_timerfd_create_wrapper) | 330 | SYSCALL(sys_timerfd_create,sys_timerfd_create,sys_timerfd_create_wrapper) |
| 331 | SYSCALL(sys_timerfd_settime,sys_timerfd_settime,compat_sys_timerfd_settime_wrapper) /* 320 */ | 331 | SYSCALL(sys_timerfd_settime,sys_timerfd_settime,compat_sys_timerfd_settime_wrapper) /* 320 */ |
| 332 | SYSCALL(sys_timerfd_gettime,sys_timerfd_gettime,compat_sys_timerfd_gettime_wrapper) | 332 | SYSCALL(sys_timerfd_gettime,sys_timerfd_gettime,compat_sys_timerfd_gettime_wrapper) |
| 333 | SYSCALL(sys_signalfd4,sys_signalfd4,compat_sys_signalfd4_wrapper) | ||
| 334 | SYSCALL(sys_eventfd2,sys_eventfd2,sys_eventfd2_wrapper) | ||
| 335 | SYSCALL(sys_inotify_init1,sys_inotify_init1,sys_inotify_init1_wrapper) | ||
| 336 | SYSCALL(sys_pipe2,sys_pipe2,sys_pipe2_wrapper) /* 325 */ | ||
| 337 | SYSCALL(sys_dup3,sys_dup3,sys_dup3_wrapper) | ||
| 338 | SYSCALL(sys_epoll_create1,sys_epoll_create1,sys_epoll_create1_wrapper) | ||
diff --git a/include/asm-s390/unistd.h b/include/asm-s390/unistd.h index 583da807ea97..c8ad350d1444 100644 --- a/include/asm-s390/unistd.h +++ b/include/asm-s390/unistd.h | |||
| @@ -259,7 +259,13 @@ | |||
| 259 | #define __NR_timerfd_create 319 | 259 | #define __NR_timerfd_create 319 |
| 260 | #define __NR_timerfd_settime 320 | 260 | #define __NR_timerfd_settime 320 |
| 261 | #define __NR_timerfd_gettime 321 | 261 | #define __NR_timerfd_gettime 321 |
| 262 | #define NR_syscalls 322 | 262 | #define __NR_signalfd4 322 |
| 263 | #define __NR_eventfd2 323 | ||
| 264 | #define __NR_inotify_init1 324 | ||
| 265 | #define __NR_pipe2 325 | ||
| 266 | #define __NR_dup3 326 | ||
| 267 | #define __NR_epoll_create1 327 | ||
| 268 | #define NR_syscalls 328 | ||
| 263 | 269 | ||
| 264 | /* | 270 | /* |
| 265 | * There are some system calls that are not present on 64 bit, some | 271 | * There are some system calls that are not present on 64 bit, some |
