Commit 36723f6e authored by Linus Torvalds's avatar Linus Torvalds

Merge bk://bk.arm.linux.org.uk/linux-2.6-rmk

into ppc970.osdl.org:/home/torvalds/v2.6/linux
parents 192fcdd0 38435bc4
...@@ -134,7 +134,7 @@ __syscall_start: ...@@ -134,7 +134,7 @@ __syscall_start:
.long sys_ipc .long sys_ipc
.long sys_fsync .long sys_fsync
.long sys_sigreturn_wrapper .long sys_sigreturn_wrapper
/* 120 */ .long sys_clone_wapper /* 120 */ .long sys_clone_wrapper
.long sys_setdomainname .long sys_setdomainname
.long sys_newuname .long sys_newuname
.long sys_ni_syscall .long sys_ni_syscall
...@@ -254,7 +254,7 @@ __syscall_start: ...@@ -254,7 +254,7 @@ __syscall_start:
.long sys_fremovexattr .long sys_fremovexattr
.long sys_tkill .long sys_tkill
.long sys_sendfile64 .long sys_sendfile64
/* 240 */ .long sys_futex /* 240 */ .long sys_futex_wrapper
.long sys_sched_setaffinity .long sys_sched_setaffinity
.long sys_sched_getaffinity .long sys_sched_getaffinity
.long sys_io_setup .long sys_io_setup
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
#include <asm/thread_info.h> #include <asm/thread_info.h>
#include <asm/ptrace.h> #include <asm/ptrace.h>
#include <asm/unistd.h>
#include "entry-header.S" #include "entry-header.S"
...@@ -190,13 +191,14 @@ ENTRY(sys_call_table) ...@@ -190,13 +191,14 @@ ENTRY(sys_call_table)
.type sys_syscall, #function .type sys_syscall, #function
sys_syscall: sys_syscall:
eor scno, r0, #OS_NUMBER << 20 eor scno, r0, #OS_NUMBER << 20
cmp scno, #NR_syscalls @ check range cmp scno, #__NR_syscall - __NR_SYSCALL_BASE
stmleia sp, {r5, r6} @ shuffle args cmpne scno, #NR_syscalls @ check range
movle r0, r1 stmloia sp, {r5, r6} @ shuffle args
movle r1, r2 movlo r0, r1
movle r2, r3 movlo r1, r2
movle r3, r4 movlo r2, r3
ldrle pc, [tbl, scno, lsl #2] movlo r3, r4
ldrlo pc, [tbl, scno, lsl #2]
b sys_ni_syscall b sys_ni_syscall
sys_fork_wrapper: sys_fork_wrapper:
...@@ -211,7 +213,7 @@ sys_execve_wrapper: ...@@ -211,7 +213,7 @@ sys_execve_wrapper:
add r3, sp, #S_OFF add r3, sp, #S_OFF
b sys_execve b sys_execve
sys_clone_wapper: sys_clone_wrapper:
add ip, sp, #S_OFF add ip, sp, #S_OFF
str ip, [sp, #4] str ip, [sp, #4]
b sys_clone b sys_clone
...@@ -236,6 +238,10 @@ sys_sigaltstack_wrapper: ...@@ -236,6 +238,10 @@ sys_sigaltstack_wrapper:
ldr r2, [sp, #S_OFF + S_SP] ldr r2, [sp, #S_OFF + S_SP]
b do_sigaltstack b do_sigaltstack
sys_futex_wrapper:
str r5, [sp, #4] @ push sixth arg
b sys_futex
/* /*
* Note: off_4k (r5) is always units of 4K. If we can't do the requested * Note: off_4k (r5) is always units of 4K. If we can't do the requested
* offset, we return EINVAL. * offset, we return EINVAL.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment