OSDN Git Service

powerpc: don't bother with zero-extending arguments in sys_clone()
authorAl Viro <viro@zeniv.linux.org.uk>
Mon, 22 Oct 2012 02:25:53 +0000 (22:25 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Mon, 22 Oct 2012 02:25:53 +0000 (22:25 -0400)
... since the syscall glue had been doing that for 9 years already.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/powerpc/kernel/process.c

index 8c600c3..471c52c 100644 (file)
@@ -1025,8 +1025,6 @@ int get_unalign_ctl(struct task_struct *tsk, unsigned long adr)
        return put_user(tsk->thread.align_ctl, (unsigned int __user *)adr);
 }
 
-#define TRUNC_PTR(x)   ((typeof(x))(((unsigned long)(x)) & 0xffffffff))
-
 int sys_clone(unsigned long clone_flags, unsigned long usp,
              int __user *parent_tidp, void __user *child_threadptr,
              int __user *child_tidp, int p6,
@@ -1035,12 +1033,6 @@ int sys_clone(unsigned long clone_flags, unsigned long usp,
        CHECK_FULL_REGS(regs);
        if (usp == 0)
                usp = regs->gpr[1];     /* stack pointer for child */
-#ifdef CONFIG_PPC64
-       if (is_32bit_task()) {
-               parent_tidp = TRUNC_PTR(parent_tidp);
-               child_tidp = TRUNC_PTR(child_tidp);
-       }
-#endif
        return do_fork(clone_flags, usp, regs, 0, parent_tidp, child_tidp);
 }