diff options
Diffstat (limited to 'arch/frv/kernel/entry.S')
-rw-r--r-- | arch/frv/kernel/entry.S | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/frv/kernel/entry.S b/arch/frv/kernel/entry.S index 7d5e000fd32e..7a886130ca10 100644 --- a/arch/frv/kernel/entry.S +++ b/arch/frv/kernel/entry.S | |||
@@ -863,6 +863,14 @@ ret_from_fork: | |||
863 | setlos.p #0,gr8 | 863 | setlos.p #0,gr8 |
864 | bra __syscall_exit | 864 | bra __syscall_exit |
865 | 865 | ||
866 | .globl ret_from_kernel_thread | ||
867 | ret_from_kernel_thread: | ||
868 | lddi.p @(gr28,#REG_GR(8)),gr20 | ||
869 | call schedule_tail | ||
870 | or.p gr20,gr20,gr8 | ||
871 | calll @(gr21,gr0) | ||
872 | bra sys_exit | ||
873 | |||
866 | ################################################################################################### | 874 | ################################################################################################### |
867 | # | 875 | # |
868 | # Return to user mode is not as complex as all this looks, | 876 | # Return to user mode is not as complex as all this looks, |