diff options
author | Jesper Nilsson <jesper.nilsson@axis.com> | 2009-04-28 10:42:39 -0400 |
---|---|---|
committer | Jesper Nilsson <jesper.nilsson@axis.com> | 2009-04-28 11:53:35 -0400 |
commit | 6d3d4be40357e3ea43b5c8837dec01d8f6cd1c67 (patch) | |
tree | cfbf63f2b5a267b0994d211e5220bff0d494886a /arch/cris | |
parent | d7bd15f67ebaaebc842a971e600c364a73b81b22 (diff) |
CRIS: Wire up syscalls signalfd4 to writev.
Adds sys_signalfd4, sys_eventfd2, sys_epoll_create1, sys_dup3,
sys_pipe2, sys_inotify_init1, sys_preadv, sys_pwritev
for both CRISv10 and CRISv32.
Diffstat (limited to 'arch/cris')
-rw-r--r-- | arch/cris/arch-v10/kernel/entry.S | 14 | ||||
-rw-r--r-- | arch/cris/arch-v32/kernel/entry.S | 8 | ||||
-rw-r--r-- | arch/cris/include/asm/unistd.h | 12 |
3 files changed, 29 insertions, 5 deletions
diff --git a/arch/cris/arch-v10/kernel/entry.S b/arch/cris/arch-v10/kernel/entry.S index 72f5cd319b97..2c18d08cd913 100644 --- a/arch/cris/arch-v10/kernel/entry.S +++ b/arch/cris/arch-v10/kernel/entry.S | |||
@@ -536,10 +536,10 @@ multiple_interrupt: | |||
536 | movem $r13, [$sp] | 536 | movem $r13, [$sp] |
537 | push $r10 ; push orig_r10 | 537 | push $r10 ; push orig_r10 |
538 | clear.d [$sp=$sp-4] ; frametype == 0, normal frame | 538 | clear.d [$sp=$sp-4] ; frametype == 0, normal frame |
539 | 539 | ||
540 | move.d $sp, $r10 | 540 | move.d $sp, $r10 |
541 | jsr do_multiple_IRQ | 541 | jsr do_multiple_IRQ |
542 | 542 | ||
543 | jump ret_from_intr | 543 | jump ret_from_intr |
544 | 544 | ||
545 | do_sigtrap: | 545 | do_sigtrap: |
@@ -585,7 +585,7 @@ _ugdb_handle_breakpoint: | |||
585 | pop $r0 ; Restore r0. | 585 | pop $r0 ; Restore r0. |
586 | ba do_sigtrap ; SIGTRAP the offending process. | 586 | ba do_sigtrap ; SIGTRAP the offending process. |
587 | pop $dccr ; Restore dccr in delay slot. | 587 | pop $dccr ; Restore dccr in delay slot. |
588 | 588 | ||
589 | .global kernel_execve | 589 | .global kernel_execve |
590 | kernel_execve: | 590 | kernel_execve: |
591 | move.d __NR_execve, $r9 | 591 | move.d __NR_execve, $r9 |
@@ -929,6 +929,14 @@ sys_call_table: | |||
929 | .long sys_fallocate | 929 | .long sys_fallocate |
930 | .long sys_timerfd_settime /* 325 */ | 930 | .long sys_timerfd_settime /* 325 */ |
931 | .long sys_timerfd_gettime | 931 | .long sys_timerfd_gettime |
932 | .long sys_signalfd4 | ||
933 | .long sys_eventfd2 | ||
934 | .long sys_epoll_create1 | ||
935 | .long sys_dup3 /* 330 */ | ||
936 | .long sys_pipe2 | ||
937 | .long sys_inotify_init1 | ||
938 | .long sys_preadv | ||
939 | .long sys_pwritev | ||
932 | 940 | ||
933 | /* | 941 | /* |
934 | * NOTE!! This doesn't have to be exact - we just have | 942 | * NOTE!! This doesn't have to be exact - we just have |
diff --git a/arch/cris/arch-v32/kernel/entry.S b/arch/cris/arch-v32/kernel/entry.S index 5e674c8f7c51..435b9671bd4b 100644 --- a/arch/cris/arch-v32/kernel/entry.S +++ b/arch/cris/arch-v32/kernel/entry.S | |||
@@ -852,6 +852,14 @@ sys_call_table: | |||
852 | .long sys_fallocate | 852 | .long sys_fallocate |
853 | .long sys_timerfd_settime /* 325 */ | 853 | .long sys_timerfd_settime /* 325 */ |
854 | .long sys_timerfd_gettime | 854 | .long sys_timerfd_gettime |
855 | .long sys_signalfd4 | ||
856 | .long sys_eventfd2 | ||
857 | .long sys_epoll_create1 | ||
858 | .long sys_dup3 /* 330 */ | ||
859 | .long sys_pipe2 | ||
860 | .long sys_inotify_init1 | ||
861 | .long sys_preadv | ||
862 | .long sys_pwritev | ||
855 | 863 | ||
856 | /* | 864 | /* |
857 | * NOTE!! This doesn't have to be exact - we just have | 865 | * NOTE!! This doesn't have to be exact - we just have |
diff --git a/arch/cris/include/asm/unistd.h b/arch/cris/include/asm/unistd.h index 235d076379d5..c17079388bb9 100644 --- a/arch/cris/include/asm/unistd.h +++ b/arch/cris/include/asm/unistd.h | |||
@@ -281,7 +281,7 @@ | |||
281 | #define __NR_mbind 274 | 281 | #define __NR_mbind 274 |
282 | #define __NR_get_mempolicy 275 | 282 | #define __NR_get_mempolicy 275 |
283 | #define __NR_set_mempolicy 276 | 283 | #define __NR_set_mempolicy 276 |
284 | #define __NR_mq_open 277 | 284 | #define __NR_mq_open 277 |
285 | #define __NR_mq_unlink (__NR_mq_open+1) | 285 | #define __NR_mq_unlink (__NR_mq_open+1) |
286 | #define __NR_mq_timedsend (__NR_mq_open+2) | 286 | #define __NR_mq_timedsend (__NR_mq_open+2) |
287 | #define __NR_mq_timedreceive (__NR_mq_open+3) | 287 | #define __NR_mq_timedreceive (__NR_mq_open+3) |
@@ -331,10 +331,18 @@ | |||
331 | #define __NR_fallocate 324 | 331 | #define __NR_fallocate 324 |
332 | #define __NR_timerfd_settime 325 | 332 | #define __NR_timerfd_settime 325 |
333 | #define __NR_timerfd_gettime 326 | 333 | #define __NR_timerfd_gettime 326 |
334 | #define __NR_signalfd4 327 | ||
335 | #define __NR_eventfd2 328 | ||
336 | #define __NR_epoll_create1 329 | ||
337 | #define __NR_dup3 330 | ||
338 | #define __NR_pipe2 331 | ||
339 | #define __NR_inotify_init1 332 | ||
340 | #define __NR_preadv 333 | ||
341 | #define __NR_pwritev 334 | ||
334 | 342 | ||
335 | #ifdef __KERNEL__ | 343 | #ifdef __KERNEL__ |
336 | 344 | ||
337 | #define NR_syscalls 327 | 345 | #define NR_syscalls 335 |
338 | 346 | ||
339 | #include <arch/unistd.h> | 347 | #include <arch/unistd.h> |
340 | 348 | ||