summaryrefslogtreecommitdiff
path: root/arch/mips/kernel/syscall.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2008-07-20 13:16:46 +0100
committerRalf Baechle <ralf@linux-mips.org>2008-07-20 14:38:21 +0100
commit8213bbf9c1c0009872a3278aa7a83ec8f3508195 (patch)
tree1fd6d8e006f2ddd9bcc7396eab092a12dc16eace /arch/mips/kernel/syscall.c
parent4914ad4a9f2d484a68422700ba8493db73c7c411 (diff)
[MIPS] Rename MIPS sys_pipe syscall entry point to something MIPS-specific.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/kernel/syscall.c')
-rw-r--r--arch/mips/kernel/syscall.c9
1 files changed, 8 insertions, 1 deletions
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 @@
#include <asm/sysmips.h>
#include <asm/uaccess.h>
-asmlinkage int sys_pipe(nabi_no_regargs volatile struct pt_regs regs)
+/*
+ * For historic reasons the pipe(2) syscall on MIPS has an unusual calling
+ * convention. It returns results in registers $v0 / $v1 which means there
+ * is no need for it to do verify the validity of a userspace pointer
+ * argument. Historically that used to be expensive in Linux. These days
+ * the performance advantage is negligible.
+ */
+asmlinkage int sysm_pipe(nabi_no_regargs volatile struct pt_regs regs)
{
int fd[2];
int error, res;