diff options
Diffstat (limited to 'arch/blackfin/kernel/entry.S')
-rw-r--r-- | arch/blackfin/kernel/entry.S | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/blackfin/kernel/entry.S b/arch/blackfin/kernel/entry.S index 65c5ba4260b0..65f4e67a65c4 100644 --- a/arch/blackfin/kernel/entry.S +++ b/arch/blackfin/kernel/entry.S | |||
@@ -54,9 +54,11 @@ ENTRY(_ret_from_fork) | |||
54 | [sp + PT_IPEND] = r0; | 54 | [sp + PT_IPEND] = r0; |
55 | /* do a 'fake' RTI by jumping to [RETI] | 55 | /* do a 'fake' RTI by jumping to [RETI] |
56 | * to avoid clearing supervisor mode in child | 56 | * to avoid clearing supervisor mode in child |
57 | */ | 57 | */ |
58 | r0 = [sp + PT_PC]; | ||
59 | [sp + PT_P0] = r0; | ||
60 | |||
58 | RESTORE_ALL_SYS | 61 | RESTORE_ALL_SYS |
59 | p0 = reti; | ||
60 | jump (p0); | 62 | jump (p0); |
61 | ENDPROC(_ret_from_fork) | 63 | ENDPROC(_ret_from_fork) |
62 | 64 | ||