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

Commit 4e5ed85a authored by Al Viro's avatar Al Viro
Browse files

parisc: switch to generic kernel_execve()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent a44e060f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -995,6 +995,7 @@ type name(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5) \
#define __ARCH_WANT_SYS_RT_SIGACTION
#define __ARCH_WANT_SYS_RT_SIGSUSPEND
#define __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND
#define __ARCH_WANT_KERNEL_EXECVE

#endif /* __ASSEMBLY__ */

+6 −22
Original line number Diff line number Diff line
@@ -741,28 +741,12 @@ ENTRY(ret_from_kernel_thread)
	ldi	0, %r26
ENDPROC(ret_from_kernel_thread)

	.import	sys_execve, code
ENTRY(__execve)
	copy	%r2, %r15
	copy	%r30, %r16
	ldo	PT_SZ_ALGN(%r30), %r30
	STREG	%r26, PT_GR26(%r16)
	STREG	%r25, PT_GR25(%r16)
	STREG	%r24, PT_GR24(%r16)
#ifdef CONFIG_64BIT
	ldo	-16(%r30),%r29		/* Reference param save area */
#endif
	BL	sys_execve, %r2
	copy	%r16, %r26

	cmpib,=,n 0,%r28,intr_return    /* forward */

	/* yes, this will trap and die. */
	copy	%r15, %r2
	copy	%r16, %r30
	bv	%r0(%r2)
	nop
ENDPROC(__execve)
ENTRY(ret_from_kernel_execve)
	mfctl   %cr30, %r1
	ldo	THREAD_SZ_ALGN(%r1), %r30
	b	intr_return	/* forward */
	copy	%r26,%r16	/* pt_regs into r16 */
ENDPROC(ret_from_kernel_execve)


	/*
+0 −10
Original line number Diff line number Diff line
@@ -337,16 +337,6 @@ asmlinkage int sys_execve(struct pt_regs *regs)
	return error;
}

extern int __execve(const char *filename,
		    const char *const argv[],
		    const char *const envp[], struct task_struct *task);
int kernel_execve(const char *filename,
		  const char *const argv[],
		  const char *const envp[])
{
	return __execve(filename, argv, envp, current);
}

unsigned long
get_wchan(struct task_struct *p)
{