diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2012-12-27 11:52:32 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2013-02-03 18:33:01 -0500 |
commit | 64b3122df48b81a40366a11f299ab819138c96e8 (patch) | |
tree | 43c187576da8dc406c9edb8e0d3fe4e471032a53 /arch/mips/kernel/syscall.c | |
parent | 974fdb3c20e72e9c0612bc038c968e420d8f9665 (diff) |
mips: take the "zero newsp means inherit the parent's one" to copy_thread()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/mips/kernel/syscall.c')
-rw-r--r-- | arch/mips/kernel/syscall.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/arch/mips/kernel/syscall.c b/arch/mips/kernel/syscall.c index 7e1c70dab767..28daa66baa7b 100644 --- a/arch/mips/kernel/syscall.c +++ b/arch/mips/kernel/syscall.c | |||
@@ -86,7 +86,7 @@ save_static_function(sys_fork); | |||
86 | static int __used noinline | 86 | static int __used noinline |
87 | _sys_fork(nabi_no_regargs struct pt_regs regs) | 87 | _sys_fork(nabi_no_regargs struct pt_regs regs) |
88 | { | 88 | { |
89 | return do_fork(SIGCHLD, regs.regs[29], 0, NULL, NULL); | 89 | return do_fork(SIGCHLD, 0, 0, NULL, NULL); |
90 | } | 90 | } |
91 | 91 | ||
92 | save_static_function(sys_clone); | 92 | save_static_function(sys_clone); |
@@ -99,8 +99,6 @@ _sys_clone(nabi_no_regargs struct pt_regs regs) | |||
99 | 99 | ||
100 | clone_flags = regs.regs[4]; | 100 | clone_flags = regs.regs[4]; |
101 | newsp = regs.regs[5]; | 101 | newsp = regs.regs[5]; |
102 | if (!newsp) | ||
103 | newsp = regs.regs[29]; | ||
104 | parent_tidptr = (int __user *) regs.regs[6]; | 102 | parent_tidptr = (int __user *) regs.regs[6]; |
105 | #ifdef CONFIG_32BIT | 103 | #ifdef CONFIG_32BIT |
106 | /* We need to fetch the fifth argument off the stack. */ | 104 | /* We need to fetch the fifth argument off the stack. */ |