xtensa: switch to generic clone()
authorAl Viro <viro@zeniv.linux.org.uk>
Sat, 27 Oct 2012 03:41:40 +0000 (23:41 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Thu, 29 Nov 2012 04:43:41 +0000 (23:43 -0500)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/xtensa/Kconfig
arch/xtensa/include/asm/syscall.h
arch/xtensa/include/asm/unistd.h
arch/xtensa/include/uapi/asm/unistd.h
arch/xtensa/kernel/process.c

index 0d1f36a..2481f26 100644 (file)
@@ -16,6 +16,7 @@ config XTENSA
        select GENERIC_KERNEL_THREAD
        select GENERIC_KERNEL_EXECVE
        select ARCH_WANT_OPTIONAL_GPIOLIB
+       select CLONE_BACKWARDS
        help
          Xtensa processors are 32-bit RISC machines designed by Tensilica
          primarily for embedded systems.  These processors are both
index 4e27d76..b00c928 100644 (file)
@@ -10,7 +10,6 @@
 
 struct pt_regs;
 struct sigaction;
-asmlinkage long xtensa_clone(unsigned long, unsigned long, struct pt_regs*);
 asmlinkage long xtensa_ptrace(long, long, long, long);
 asmlinkage long xtensa_sigreturn(struct pt_regs*);
 asmlinkage long xtensa_rt_sigreturn(struct pt_regs*);
index f4e6eaa..e002dbc 100644 (file)
@@ -2,6 +2,7 @@
 #define _XTENSA_UNISTD_H
 
 #define __ARCH_WANT_SYS_EXECVE
+#define __ARCH_WANT_SYS_CLONE
 #include <uapi/asm/unistd.h>
 
 /*
index 9f36d0e..5162418 100644 (file)
@@ -260,7 +260,7 @@ __SYSCALL(115, sys_sendmmsg, 4)
 /* Process Operations */
 
 #define __NR_clone                             116
-__SYSCALL(116, xtensa_clone, 5)
+__SYSCALL(116, sys_clone, 5)
 #define __NR_execve                            117
 __SYSCALL(117, sys_execve, 3)
 #define __NR_exit                              118
index 09ae7bf..0036c14 100644 (file)
@@ -364,12 +364,3 @@ int dump_fpu(void)
 {
        return 0;
 }
-
-asmlinkage
-long xtensa_clone(unsigned long clone_flags, unsigned long newsp,
-                  void __user *parent_tid, void *child_tls,
-                  void __user *child_tid, long a5,
-                  struct pt_regs *regs)
-{
-        return do_fork(clone_flags, newsp, regs, 0, parent_tid, child_tid);
-}