Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 60541d77 authored by Al Viro's avatar Al Viro Committed by Guan Xuetao
Browse files

unicore32: switch to generic sys_execve()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
Acked-and-Tested-by: default avatarGuan Xuetao <gxt@mprc.pku.edu.cn>
parent 38e99353
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -12,3 +12,4 @@

/* Use the standard ABI for syscalls. */
#include <asm-generic/unistd.h>
#define __ARCH_WANT_SYS_EXECVE
+0 −5
Original line number Diff line number Diff line
@@ -668,11 +668,6 @@ __cr_alignment:
#endif
	.ltorg

ENTRY(sys_execve)
		add	r3, sp, #S_OFF
		b	__sys_execve
ENDPROC(sys_execve)

ENTRY(sys_clone)
		add	ip, sp, #S_OFF
		stw	ip, [sp+], #4
+0 −21
Original line number Diff line number Diff line
@@ -42,27 +42,6 @@ asmlinkage long __sys_clone(unsigned long clone_flags, unsigned long newsp,
			parent_tid, child_tid);
}

/* sys_execve() executes a new program.
 * This is called indirectly via a small wrapper
 */
asmlinkage long __sys_execve(const char __user *filename,
			  const char __user *const __user *argv,
			  const char __user *const __user *envp,
			  struct pt_regs *regs)
{
	int error;
	struct filename *fn;

	fn = getname(filename);
	error = PTR_ERR(fn);
	if (IS_ERR(fn))
		goto out;
	error = do_execve(fn->name, argv, envp, regs);
	putname(fn);
out:
	return error;
}

/* Note: used by the compat code even in 64-bit Linux. */
SYSCALL_DEFINE6(mmap2, unsigned long, addr, unsigned long, len,
		unsigned long, prot, unsigned long, flags,