diff options
Diffstat (limited to 'arch/frv/kernel/entry.S')
-rw-r--r-- | arch/frv/kernel/entry.S | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/frv/kernel/entry.S b/arch/frv/kernel/entry.S index 7d5e000fd32e..002732960315 100644 --- a/arch/frv/kernel/entry.S +++ b/arch/frv/kernel/entry.S | |||
@@ -863,6 +863,19 @@ 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 | |||
874 | .globl ret_from_kernel_execve | ||
875 | ret_from_kernel_execve: | ||
876 | ori gr28,0,sp | ||
877 | bra __syscall_exit | ||
878 | |||
866 | ################################################################################################### | 879 | ################################################################################################### |
867 | # | 880 | # |
868 | # Return to user mode is not as complex as all this looks, | 881 | # Return to user mode is not as complex as all this looks, |