[MIPS] Wire up the timerfd_*() o32 system calls

This patch enables the system calls timerfd_create(), timerfd_settime()
and timerfd_gettime() for MIPS architecture.

Please see the following Bugzilla entry for more details:

http://bugzilla.kernel.org/show_bug.cgi?id=10038

This was tested using a Malta 4Kc board in both little-endian and
big-endian modes. The unit test program is available from the URL
above.

Signed-off-by: Dmitri Vorobiev <dmitri.vorobiev@gmail.com>

[Ralf: Added N64, N32 and O32 bits on 64-bit kernels.]
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
Dmitri Vorobiev 2008-02-19 00:02:37 +03:00 committed by Ralf Baechle
parent 84502f817b
commit 6783fe6253
5 changed files with 27 additions and 6 deletions

View File

@ -663,6 +663,9 @@ einval: li v0, -EINVAL
sys sys_ni_syscall 0 sys sys_ni_syscall 0
sys sys_eventfd 1 sys sys_eventfd 1
sys sys_fallocate 6 /* 4320 */ sys sys_fallocate 6 /* 4320 */
sys sys_timerfd_create 2
sys sys_timerfd_gettime 2
sys sys_timerfd_settime 4
.endm .endm
/* We pre-compute the number of _instruction_ bytes needed to /* We pre-compute the number of _instruction_ bytes needed to

View File

@ -478,4 +478,7 @@ sys_call_table:
PTR sys_ni_syscall PTR sys_ni_syscall
PTR sys_eventfd PTR sys_eventfd
PTR sys_fallocate PTR sys_fallocate
PTR sys_timerfd_create /* 5280 */
PTR sys_timerfd_gettime
PTR sys_timerfd_settime
.size sys_call_table,.-sys_call_table .size sys_call_table,.-sys_call_table

View File

@ -404,4 +404,7 @@ EXPORT(sysn32_call_table)
PTR sys_ni_syscall PTR sys_ni_syscall
PTR sys_eventfd PTR sys_eventfd
PTR sys_fallocate PTR sys_fallocate
PTR sys_timerfd_create
PTR sys_timerfd_gettime /* 5285 */
PTR sys_timerfd_settime
.size sysn32_call_table,.-sysn32_call_table .size sysn32_call_table,.-sysn32_call_table

View File

@ -526,4 +526,7 @@ sys_call_table:
PTR sys_ni_syscall PTR sys_ni_syscall
PTR sys_eventfd PTR sys_eventfd
PTR sys32_fallocate /* 4320 */ PTR sys32_fallocate /* 4320 */
PTR sys_timerfd_create
PTR sys_timerfd_gettime
PTR sys_timerfd_settime
.size sys_call_table,.-sys_call_table .size sys_call_table,.-sys_call_table

View File

@ -341,16 +341,19 @@
#define __NR_timerfd (__NR_Linux + 318) #define __NR_timerfd (__NR_Linux + 318)
#define __NR_eventfd (__NR_Linux + 319) #define __NR_eventfd (__NR_Linux + 319)
#define __NR_fallocate (__NR_Linux + 320) #define __NR_fallocate (__NR_Linux + 320)
#define __NR_timerfd_create (__NR_Linux + 321)
#define __NR_timerfd_gettime (__NR_Linux + 322)
#define __NR_timerfd_settime (__NR_Linux + 323)
/* /*
* Offset of the last Linux o32 flavoured syscall * Offset of the last Linux o32 flavoured syscall
*/ */
#define __NR_Linux_syscalls 320 #define __NR_Linux_syscalls 323
#endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */ #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
#define __NR_O32_Linux 4000 #define __NR_O32_Linux 4000
#define __NR_O32_Linux_syscalls 320 #define __NR_O32_Linux_syscalls 323
#if _MIPS_SIM == _MIPS_SIM_ABI64 #if _MIPS_SIM == _MIPS_SIM_ABI64
@ -638,16 +641,19 @@
#define __NR_timerfd (__NR_Linux + 277) #define __NR_timerfd (__NR_Linux + 277)
#define __NR_eventfd (__NR_Linux + 278) #define __NR_eventfd (__NR_Linux + 278)
#define __NR_fallocate (__NR_Linux + 279) #define __NR_fallocate (__NR_Linux + 279)
#define __NR_timerfd_create (__NR_Linux + 280)
#define __NR_timerfd_gettime (__NR_Linux + 281)
#define __NR_timerfd_settime (__NR_Linux + 282)
/* /*
* Offset of the last Linux 64-bit flavoured syscall * Offset of the last Linux 64-bit flavoured syscall
*/ */
#define __NR_Linux_syscalls 279 #define __NR_Linux_syscalls 282
#endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */ #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */
#define __NR_64_Linux 5000 #define __NR_64_Linux 5000
#define __NR_64_Linux_syscalls 279 #define __NR_64_Linux_syscalls 282
#if _MIPS_SIM == _MIPS_SIM_NABI32 #if _MIPS_SIM == _MIPS_SIM_NABI32
@ -939,16 +945,19 @@
#define __NR_timerfd (__NR_Linux + 281) #define __NR_timerfd (__NR_Linux + 281)
#define __NR_eventfd (__NR_Linux + 282) #define __NR_eventfd (__NR_Linux + 282)
#define __NR_fallocate (__NR_Linux + 283) #define __NR_fallocate (__NR_Linux + 283)
#define __NR_timerfd_create (__NR_Linux + 284)
#define __NR_timerfd_gettime (__NR_Linux + 285)
#define __NR_timerfd_settime (__NR_Linux + 286)
/* /*
* Offset of the last N32 flavoured syscall * Offset of the last N32 flavoured syscall
*/ */
#define __NR_Linux_syscalls 283 #define __NR_Linux_syscalls 286
#endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */ #endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */
#define __NR_N32_Linux 6000 #define __NR_N32_Linux 6000
#define __NR_N32_Linux_syscalls 283 #define __NR_N32_Linux_syscalls 286
#ifdef __KERNEL__ #ifdef __KERNEL__