Commit 363806dd authored by Al Viro's avatar Al Viro
Browse files

parisc: switch to saner kernel_execve() semantics

parent ff0ab8af
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -23,6 +23,7 @@ config PARISC
	select HAVE_MOD_ARCH_SPECIFIC
	select MODULES_USE_ELF_RELA
	select GENERIC_KERNEL_THREAD
	select GENERIC_KERNEL_EXECVE

	help
	  The PA-RISC microprocessor is designed by Hewlett-Packard and used
+0 −1
Original line number Diff line number Diff line
@@ -995,7 +995,6 @@ 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
#define __ARCH_WANT_SYS_EXECVE

#endif /* __ASSEMBLY__ */
+3 −19
Original line number Diff line number Diff line
@@ -727,26 +727,10 @@ ENTRY(ret_from_kernel_thread)
	LDREG	TASK_PT_GR26(%r1), %r1
	ble	0(%sr7, %r1)
	copy	%r31, %r2

#ifdef CONFIG_64BIT
	ldo	-16(%r30),%r29		/* Reference param save area */
	loadgp				/* Thread could have been in a module */
#endif
#ifndef CONFIG_64BIT
	b	sys_exit
#else
	load32	sys_exit, %r1
	bv	%r0(%r1)
#endif
	ldi	0, %r26
	b	finish_child_return
	nop
ENDPROC(ret_from_kernel_thread)

ENTRY(ret_from_kernel_execve)
	mfctl   %cr30, %r1
	b	syscall_exit	/* forward */
	ldo	THREAD_SZ_ALGN+FRAME_SIZE(%r1), %r30
ENDPROC(ret_from_kernel_execve)


	/*
	 * struct task_struct *_switch_to(struct task_struct *prev,
@@ -1721,7 +1705,7 @@ ENDPROC(sys_fork_wrapper)
ENTRY(child_return)
	BL	schedule_tail, %r2
	nop

finish_child_return:
	LDREG	TI_TASK-THREAD_SZ_ALGN-FRAME_SIZE(%r30), %r1
	ldo	TASK_REGS(%r1),%r1	 /* get pt regs */