avr32: switch to generic sys_execve()
authorAl Viro <viro@zeniv.linux.org.uk>
Mon, 15 Oct 2012 06:27:16 +0000 (02:27 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Mon, 15 Oct 2012 15:15:04 +0000 (11:15 -0400)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/avr32/include/asm/unistd.h
arch/avr32/kernel/process.c
arch/avr32/kernel/syscall-stubs.S
arch/avr32/kernel/syscall_table.S

index 157b4bd3d5e50aa23942f5b63640f40c3133d966..641023d1bcb5eb000e7932d72d50a9a8da987f9f 100644 (file)
@@ -39,6 +39,7 @@
 #define __ARCH_WANT_SYS_GETPGRP
 #define __ARCH_WANT_SYS_RT_SIGACTION
 #define __ARCH_WANT_SYS_RT_SIGSUSPEND
+#define __ARCH_WANT_SYS_EXECVE
 
 /*
  * "Conditional" syscalls
index 07380c3a4f7821ff69b2b27d912146d0949178e2..09b894d96d6e21aefadab9283a480e0b724f01e9 100644 (file)
@@ -349,27 +349,6 @@ asmlinkage int sys_vfork(struct pt_regs *regs)
                       0, NULL, NULL);
 }
 
-asmlinkage int sys_execve(const char __user *ufilename,
-                         const char __user *const __user *uargv,
-                         const char __user *const __user *uenvp,
-                         struct pt_regs *regs)
-{
-       int error;
-       struct filename *filename;
-
-       filename = getname(ufilename);
-       error = PTR_ERR(filename);
-       if (IS_ERR(filename))
-               goto out;
-
-       error = do_execve(filename->name, uargv, uenvp, regs);
-       putname(filename);
-
-out:
-       return error;
-}
-
-
 /*
  * This function is supposed to answer the question "who called
  * schedule()?"
index 0447a3e2ba64b773c108fb7f5db9935329fcbc21..285a61b9194e05cdbc8c750b4662b37c72f737aa 100644 (file)
@@ -50,12 +50,6 @@ __sys_vfork:
        mov     r12, sp
        rjmp    sys_vfork
 
-       .global __sys_execve
-       .type   __sys_execve,@function
-__sys_execve:
-       mov     r9, sp
-       rjmp    sys_execve
-
        .global __sys_mmap2
        .type   __sys_mmap2,@function
 __sys_mmap2:
index 6eba53530d1c552ea9813a16419a679c27075415..fc649770681998f72f03d0a302cb8d898224a2cd 100644 (file)
@@ -24,7 +24,7 @@ sys_call_table:
        .long   sys_creat
        .long   sys_link
        .long   sys_unlink              /* 10 */
-       .long   __sys_execve
+       .long   sys_execve
        .long   sys_chdir
        .long   sys_time
        .long   sys_mknod