microblaze: switch to generic kernel_thread()

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
This commit is contained in:
Al Viro
2012-10-06 13:52:37 -04:00
committed by Michal Simek
parent fd11ff7380
commit 2319295dd8
5 changed files with 39 additions and 58 deletions

View File

@@ -484,6 +484,15 @@ C_ENTRY(ret_from_fork):
brid ret_from_trap; /* Do normal trap return */
add r3, r0, r0; /* Child's fork call should return 0. */
C_ENTRY(ret_from_kernel_thread):
bralid r15, schedule_tail; /* ...which is schedule_tail's arg */
add r5, r3, r0; /* switch_thread returns the prev task */
/* ( in the delay slot ) */
brald r15, r20 /* fn was left in r20 */
addk r5, r0, r19 /* ... and argument - in r19 */
brid sys_exit /* won't be returning... */
addk r5, r0, r0
C_ENTRY(sys_vfork):
brid microblaze_vfork /* Do real work (tail-call) */
addik r5, r1, 0