aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/mips/kernel/scall32-o32.S2
-rw-r--r--arch/mips/kernel/scall64-64.S2
-rw-r--r--arch/mips/kernel/scall64-n32.S2
-rw-r--r--arch/mips/kernel/scall64-o32.S2
-rw-r--r--arch/mips/kernel/syscall.c9
5 files changed, 12 insertions, 5 deletions
diff --git a/arch/mips/kernel/scall32-o32.S b/arch/mips/kernel/scall32-o32.S
index c058c0b61a2a..fc4fd4d705e2 100644
--- a/arch/mips/kernel/scall32-o32.S
+++ b/arch/mips/kernel/scall32-o32.S
@@ -354,7 +354,7 @@ einval: li v0, -EINVAL
354 sys sys_mkdir 2 354 sys sys_mkdir 2
355 sys sys_rmdir 1 /* 4040 */ 355 sys sys_rmdir 1 /* 4040 */
356 sys sys_dup 1 356 sys sys_dup 1
357 sys sys_pipe 0 357 sys sysm_pipe 0
358 sys sys_times 1 358 sys sys_times 1
359 sys sys_ni_syscall 0 359 sys sys_ni_syscall 0
360 sys sys_brk 1 /* 4045 */ 360 sys sys_brk 1 /* 4045 */
diff --git a/arch/mips/kernel/scall64-64.S b/arch/mips/kernel/scall64-64.S
index dc597b600c68..2b73fd1e4528 100644
--- a/arch/mips/kernel/scall64-64.S
+++ b/arch/mips/kernel/scall64-64.S
@@ -219,7 +219,7 @@ sys_call_table:
219 PTR sys_readv 219 PTR sys_readv
220 PTR sys_writev 220 PTR sys_writev
221 PTR sys_access /* 5020 */ 221 PTR sys_access /* 5020 */
222 PTR sys_pipe 222 PTR sysm_pipe
223 PTR sys_select 223 PTR sys_select
224 PTR sys_sched_yield 224 PTR sys_sched_yield
225 PTR sys_mremap 225 PTR sys_mremap
diff --git a/arch/mips/kernel/scall64-n32.S b/arch/mips/kernel/scall64-n32.S
index 12940eca7893..2654e75d2fef 100644
--- a/arch/mips/kernel/scall64-n32.S
+++ b/arch/mips/kernel/scall64-n32.S
@@ -141,7 +141,7 @@ EXPORT(sysn32_call_table)
141 PTR compat_sys_readv 141 PTR compat_sys_readv
142 PTR compat_sys_writev 142 PTR compat_sys_writev
143 PTR sys_access /* 6020 */ 143 PTR sys_access /* 6020 */
144 PTR sys_pipe 144 PTR sysm_pipe
145 PTR compat_sys_select 145 PTR compat_sys_select
146 PTR sys_sched_yield 146 PTR sys_sched_yield
147 PTR sys_mremap 147 PTR sys_mremap
diff --git a/arch/mips/kernel/scall64-o32.S b/arch/mips/kernel/scall64-o32.S
index 9a275efb4f04..76167bea5a70 100644
--- a/arch/mips/kernel/scall64-o32.S
+++ b/arch/mips/kernel/scall64-o32.S
@@ -247,7 +247,7 @@ sys_call_table:
247 PTR sys_mkdir 247 PTR sys_mkdir
248 PTR sys_rmdir /* 4040 */ 248 PTR sys_rmdir /* 4040 */
249 PTR sys_dup 249 PTR sys_dup
250 PTR sys_pipe 250 PTR sysm_pipe
251 PTR compat_sys_times 251 PTR compat_sys_times
252 PTR sys_ni_syscall 252 PTR sys_ni_syscall
253 PTR sys_brk /* 4045 */ 253 PTR sys_brk /* 4045 */
diff --git a/arch/mips/kernel/syscall.c b/arch/mips/kernel/syscall.c
index af1bdc897488..3523c8d12eda 100644
--- a/arch/mips/kernel/syscall.c
+++ b/arch/mips/kernel/syscall.c
@@ -40,7 +40,14 @@
40#include <asm/sysmips.h> 40#include <asm/sysmips.h>
41#include <asm/uaccess.h> 41#include <asm/uaccess.h>
42 42
43asmlinkage int sys_pipe(nabi_no_regargs volatile struct pt_regs regs) 43/*
44 * For historic reasons the pipe(2) syscall on MIPS has an unusual calling
45 * convention. It returns results in registers $v0 / $v1 which means there
46 * is no need for it to do verify the validity of a userspace pointer
47 * argument. Historically that used to be expensive in Linux. These days
48 * the performance advantage is negligible.
49 */
50asmlinkage int sysm_pipe(nabi_no_regargs volatile struct pt_regs regs)
44{ 51{
45 int fd[2]; 52 int fd[2];
46 int error, res; 53 int error, res;