Commit 5f6c4ab6 authored by Al Viro's avatar Al Viro Committed by Michal Simek
Browse files

microblaze: switch to generic sys_execve()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 99c59f60
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -422,6 +422,7 @@
#define __ARCH_WANT_SYS_SIGPROCMASK
#define __ARCH_WANT_SYS_RT_SIGACTION
#define __ARCH_WANT_SYS_RT_SIGSUSPEND
#define __ARCH_WANT_SYS_EXECVE

/*
 * "Conditional" syscalls
+0 −4
Original line number Diff line number Diff line
@@ -567,10 +567,6 @@ sys_clone:
	brid	microblaze_clone
	addk	r7, r1, r0

sys_execve:
	brid	microblaze_execve
	addk	r8, r1, r0

sys_rt_sigreturn_wrapper:
	brid	sys_rt_sigreturn
	addk	r5, r1, r0
+0 −4
Original line number Diff line number Diff line
@@ -489,10 +489,6 @@ C_ENTRY(sys_clone):
	brid	do_fork		/* Do real work (tail-call) */
	add     r8, r0, r0;             /* Arg 3: (unused) */

C_ENTRY(sys_execve):
	brid	microblaze_execve;	/* Do real work (tail-call).*/
	addik	r8, r1, 0;		/* add user context as 4th arg */

C_ENTRY(sys_rt_sigreturn_wrapper):
	brid	sys_rt_sigreturn	/* Do real work */
	addik	r5, r1, 0;		/* add user context as 1st arg */
+0 −18
Original line number Diff line number Diff line
@@ -48,24 +48,6 @@ asmlinkage long microblaze_clone(int flags, unsigned long stack,
	return do_fork(flags, stack, regs, 0, NULL, NULL);
}

asmlinkage long microblaze_execve(const char __user *filenamei,
				  const char __user *const __user *argv,
				  const char __user *const __user *envp,
				  struct pt_regs *regs)
{
	int error;
	struct filename *filename;

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

asmlinkage long sys_mmap(unsigned long addr, unsigned long len,
			unsigned long prot, unsigned long flags,
			unsigned long fd, off_t pgoff)