git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6
[pandora-kernel.git]
/
arch
/
blackfin
/
kernel
/
entry.S
diff --git
a/arch/blackfin/kernel/entry.S
b/arch/blackfin/kernel/entry.S
index
5880b27
..
31bd9bf
100644
(file)
--- a/
arch/blackfin/kernel/entry.S
+++ b/
arch/blackfin/kernel/entry.S
@@
-54,14
+54,23
@@
ENTRY(_ret_from_fork)
[sp + PT_IPEND] = r0;
/* do a 'fake' RTI by jumping to [RETI]
* to avoid clearing supervisor mode in child
[sp + PT_IPEND] = r0;
/* do a 'fake' RTI by jumping to [RETI]
* to avoid clearing supervisor mode in child
- */
+ */
+ r0 = [sp + PT_PC];
+ [sp + PT_P0] = r0;
+
RESTORE_ALL_SYS
RESTORE_ALL_SYS
- p0 = reti;
jump (p0);
jump (p0);
+ENDPROC(_ret_from_fork)
ENTRY(_sys_fork)
r0 = -EINVAL;
ENTRY(_sys_fork)
r0 = -EINVAL;
+#if (ANOMALY_05000371)
+ nop;
+ nop;
+ nop;
+#endif
rts;
rts;
+ENDPROC(_sys_fork)
ENTRY(_sys_vfork)
r0 = sp;
ENTRY(_sys_vfork)
r0 = sp;
@@
-72,6
+81,7
@@
ENTRY(_sys_vfork)
SP += 12;
rets = [sp++];
rts;
SP += 12;
rets = [sp++];
rts;
+ENDPROC(_sys_vfork)
ENTRY(_sys_clone)
r0 = sp;
ENTRY(_sys_clone)
r0 = sp;
@@
-82,6
+92,7
@@
ENTRY(_sys_clone)
SP += 12;
rets = [sp++];
rts;
SP += 12;
rets = [sp++];
rts;
+ENDPROC(_sys_clone)
ENTRY(_sys_rt_sigreturn)
r0 = sp;
ENTRY(_sys_rt_sigreturn)
r0 = sp;
@@
-92,3
+103,4
@@
ENTRY(_sys_rt_sigreturn)
SP += 12;
rets = [sp++];
rts;
SP += 12;
rets = [sp++];
rts;
+ENDPROC(_sys_rt_sigreturn)