Skip to contentSkip to conversation

m32r: use generic sys_pipe

PATCH In review Christoph Hellwig 2 participants 3 messages May 9, 2008

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 m32r: use generic sys_pipe

m32r can use the generic sys_pipe implementation.

The current sys_pipe implementation on m32r only differes from the generic one by passing a lot of additional unused registers to sys_pipe.

Reviewed and tested by Hirokazu Takata.

arch/m32r/kernel/sys_m32r.c +0 -23
Index: linux-2.6/arch/m32r/kernel/sys_m32r.c
===================================================================
@@ -76,29 +76,6 @@ asmlinkage int sys_tas(int __user *addr)
 	return oldval;
 }
 
-/*
- * sys_pipe() is the normal C calling standard for creating
- * a pipe. It's not the way Unix traditionally does this, though.
- */
-asmlinkage int
-sys_pipe(unsigned long r0, unsigned long r1, unsigned long r2,
-	unsigned long r3, unsigned long r4, unsigned long r5,
-	unsigned long r6, struct pt_regs regs)
-{
-	int fd[2];
-	int error;
-
-	error = do_pipe(fd);
-	if (!error) {
-		if (copy_to_user((void __user *)r0, fd, 2*sizeof(int))) {
-			sys_close(fd[0]);
-			sys_close(fd[1]);
-			error = -EFAULT;
-		}
-	}
-	return error;
-}
-
 asmlinkage long sys_mmap2(unsigned long addr, unsigned long len,
 	unsigned long prot, unsigned long flags,
 	unsigned long fd, unsigned long pgoff)
#1 lore raw

Hi, Christoph,

Please sign off this patch.

Thanks,

From: Christoph Hellwig <[email protected]>
Subject: [PATCH] m32r: use generic sys_pipe
Date: Fri, 09 May 2008 14:44:02 +0200

Quoted 6 lines

m32r can use the generic sys_pipe implementation.

The current sys_pipe implementation on m32r only differes from the generic one by passing a lot of additional unused registers to sys_pipe.

Reviewed and tested by Hirokazu Takata.

Quoted 35 lines

Index: linux-2.6/arch/m32r/kernel/sys_m32r.c
===================================================================

arch/m32r/kernel/sys_m32r.c +0 -23
@@ -76,29 +76,6 @@ asmlinkage int sys_tas(int __user *addr)
 	return oldval;
 }
 
-/*
- * sys_pipe() is the normal C calling standard for creating
- * a pipe. It's not the way Unix traditionally does this, though.
- */
-asmlinkage int
-sys_pipe(unsigned long r0, unsigned long r1, unsigned long r2,
-	unsigned long r3, unsigned long r4, unsigned long r5,
-	unsigned long r6, struct pt_regs regs)
-{
-	int fd[2];
-	int error;
-
-	error = do_pipe(fd);
-	if (!error) {
-		if (copy_to_user((void __user *)r0, fd, 2*sizeof(int))) {
-			sys_close(fd[0]);
-			sys_close(fd[1]);
-			error = -EFAULT;
-		}
-	}
-	return error;
-}
-
 asmlinkage long sys_mmap2(unsigned long addr, unsigned long len,
 	unsigned long prot, unsigned long flags,
 	unsigned long fd, unsigned long pgoff)
#2 lore raw
Quoted 3 lines · Hirokazu Takata

Hi, Christoph,

Please sign off this patch.

Sorry, looks like it got lost before I sent it.

Quoted 3 lines
Quoted 1 line

Reviewed and tested by Hirokazu Takata.

Quoted 28 lines
Quoted 28 lines

Index: linux-2.6/arch/m32r/kernel/sys_m32r.c
===================================================================

arch/m32r/kernel/sys_m32r.c +0 -19
@@ -76,29 +76,6 @@ asmlinkage int sys_tas(int __user *addr)
 	return oldval;
 }
 
-/*
- * sys_pipe() is the normal C calling standard for creating
- * a pipe. It's not the way Unix traditionally does this, though.
- */
-asmlinkage int
-sys_pipe(unsigned long r0, unsigned long r1, unsigned long r2,
-	unsigned long r3, unsigned long r4, unsigned long r5,
-	unsigned long r6, struct pt_regs regs)
-{
-	int fd[2];
-	int error;
-
-	error = do_pipe(fd);
-	if (!error) {
-		if (copy_to_user((void __user *)r0, fd, 2*sizeof(int))) {
-			sys_close(fd[0]);
-			sys_close(fd[1]);
-			error = -EFAULT;
-		}
Quoted 8 lines

arch/m32r/kernel/sys_m32r.c asmlinkage int sys_tas(int __user *addr) · line 81

Quoted 8 lines
arch/m32r/kernel/sys_m32r.c +0 -4
-	}
-	return error;
-}
-
 asmlinkage long sys_mmap2(unsigned long addr, unsigned long len,
 	unsigned long prot, unsigned long flags,
 	unsigned long fd, unsigned long pgoff)

---end quoted text---