summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/mips/Kconfig1
-rw-r--r--arch/mips/include/asm/unistd.h1
-rw-r--r--arch/mips/kernel/entry.S12
3 files changed, 2 insertions, 12 deletions
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index ede301f9c88b..4183e62f178c 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -41,6 +41,7 @@ config MIPS
select MODULES_USE_ELF_REL
select MODULES_USE_ELF_RELA if 64BIT
select GENERIC_KERNEL_THREAD
+ select GENERIC_KERNEL_EXECVE
menu "Machine selection"
diff --git a/arch/mips/include/asm/unistd.h b/arch/mips/include/asm/unistd.h
index 8ae908c66e59..b306e2081cad 100644
--- a/arch/mips/include/asm/unistd.h
+++ b/arch/mips/include/asm/unistd.h
@@ -18,7 +18,6 @@
#ifndef __ASSEMBLY__
#define __ARCH_OMIT_COMPAT_SYS_GETDENTS64
-#define __ARCH_WANT_KERNEL_EXECVE
#define __ARCH_WANT_OLD_READDIR
#define __ARCH_WANT_SYS_ALARM
#define __ARCH_WANT_SYS_EXECVE
diff --git a/arch/mips/kernel/entry.S b/arch/mips/kernel/entry.S
index 5dcb5fbbbd53..3320cb4ac1d4 100644
--- a/arch/mips/kernel/entry.S
+++ b/arch/mips/kernel/entry.S
@@ -69,8 +69,7 @@ FEXPORT(ret_from_kernel_thread)
jal schedule_tail # a0 = struct task_struct *prev
move a0, s1
jal s0
- li a0, 0
- j sys_exit
+ j syscall_exit
FEXPORT(ret_from_fork)
jal schedule_tail # a0 = struct task_struct *prev
@@ -192,15 +191,6 @@ syscall_exit_work:
jal syscall_trace_leave
b resume_userspace
-LEAF(ret_from_kernel_execve)
- move sp, a0
- ori $28, sp, _THREAD_SIZE - 1
- xori $28, $28, _THREAD_SIZE - 1
- li v0, 0
- li a3, 0
- j syscall_exit_partial
- END(ret_from_kernel_execve)
-
#if defined(CONFIG_CPU_MIPSR2) || defined(CONFIG_MIPS_MT)
/*