projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
53e30d0
)
parisc: Avoid interruption in critical region in entry.S
author
John David Anglin
<
[email protected]
>
Sun, 11 Apr 2010 17:12:56 +0000
(17:12 +0000)
committer
Kyle McMartin
<
[email protected]
>
Sun, 30 May 2010 09:44:36 +0000
(
05:44
-0400)
Signed-off-by: John David Anglin <
[email protected]
>
Signed-off-by: Kyle McMartin <
[email protected]
>
arch/parisc/kernel/entry.S
patch
|
blob
|
history
diff --git
a/arch/parisc/kernel/entry.S
b/arch/parisc/kernel/entry.S
index 3a44f7f704fad67792fa0cc6325060adb6db933c..ba86f610e76f118390e555a689cae7aff11c1241 100644
(file)
--- a/
arch/parisc/kernel/entry.S
+++ b/
arch/parisc/kernel/entry.S
@@
-2076,9
+2076,10
@@
syscall_restore:
LDREG TASK_PT_GR31(%r1),%r31 /* restore syscall rp */
/* NOTE: We use rsm/ssm pair to make this operation atomic */
+ LDREG TASK_PT_GR30(%r1),%r1 /* Get user sp */
rsm PSW_SM_I, %r0
-
LDREG TASK_PT_GR30(%r1),%r30 /* r
estore user sp */
- mfsp %sr3,%r1 /* Get user
s
space id */
+
copy %r1,%r30 /* R
estore user sp */
+ mfsp %sr3,%r1 /* Get user space id */
mtsp %r1,%sr7 /* Restore sr7 */
ssm PSW_SM_I, %r0