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 0d1f36a22c98827ba204af46859b349ac3da91ae..2481f267be298a9c9b2f0891d703a15b8d725def 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 4e27d76c9612d98c77a08ff4bc287daf494f133c..b00c928d4cce44d8316fa838bf0c240d7ea5f535 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 f4e6eaa40d1ca86946799a1f7eab6d7047a69dd5..e002dbcc88b6e621bf25c8a73ce2e60641912126 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 9f36d0e3e0aca7d8fc87257be6d48cbdea16f810..5162418c5d9045a3899fa3b42cd7569a0d87feb2 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 09ae7bfab9a7a4a8ff2a6e2c55aadf07dda48024..0036c14739f85a4cb8345385c8cf3408b81adc25 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);
-}