Messages in this thread Patch in this message | | | Subject | [PATCH 1/4] MN10300: Fix ret_from_kernel_thread [ver #2] | From | David Howells <> | Date | Tue, 28 May 2013 20:21:02 +0100 |
| |
ret_from_kernel_thread needs to set A2 to the thread_info pointer before jumping to syscall_exit.
Without this, we never correctly start userspace.
This was caused by the rejuggling of the fork/exec paths in commit:
ddf23e87a804cbf6fa3818076b33fe023cce09fd Author: Al Viro <viro@zeniv.linux.org.uk> Date: Thu Oct 11 17:32:41 2012 -0400 Subject: mn10300: switch to saner kernel_execve() semantics
Reported-by: Ken Cox <jkc@redhat.com> Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Ken Cox <jkc@redhat.com> Acked-by: Al Viro <viro@ZenIV.linux.org.uk> ---
arch/mn10300/kernel/entry.S | 1 + 1 file changed, 1 insertion(+)
diff --git a/arch/mn10300/kernel/entry.S b/arch/mn10300/kernel/entry.S index 68fcab8..9420057 100644 --- a/arch/mn10300/kernel/entry.S +++ b/arch/mn10300/kernel/entry.S @@ -60,6 +60,7 @@ ENTRY(ret_from_kernel_thread) mov (REG_D0,fp),d0 mov (REG_A0,fp),a0 calls (a0) + GET_THREAD_INFO a2 # A2 must be set on return from sys_exit() clr d0 mov d0,(REG_D0,fp) jmp syscall_exit
| |