diff options
author | David S. Miller <davem@davemloft.net> | 2006-01-31 18:35:05 -0800 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-03-20 01:11:30 -0800 |
commit | 30a6ecad9670d97c9d0fbfa7d80970aeb339bdec (patch) | |
tree | 37f3b37871f23a8fb4fcb14527c68a49a7e1c270 | |
parent | 86b818687d4894063ecd1190e54717a0cce8c009 (diff) | |
download | linux-30a6ecad9670d97c9d0fbfa7d80970aeb339bdec.tar.gz linux-30a6ecad9670d97c9d0fbfa7d80970aeb339bdec.tar.bz2 linux-30a6ecad9670d97c9d0fbfa7d80970aeb339bdec.zip |
[SPARC64]: Don't clobber alt-global %g4 on window fixups.
If we are returning back to kernel mode, %g4 could be live
(for example, in the case where we window spill in the etrap
code). So do not change it's value if going back to kernel.
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | arch/sparc64/kernel/winfixup.S | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/sparc64/kernel/winfixup.S b/arch/sparc64/kernel/winfixup.S index ade991b7d079..320a762d0519 100644 --- a/arch/sparc64/kernel/winfixup.S +++ b/arch/sparc64/kernel/winfixup.S @@ -160,7 +160,7 @@ spill_fixup: andcc %g1, TSTATE_PRIV, %g0 saved and %g1, TSTATE_CWP, %g1 - be,pn %xcc, window_scheisse_from_user_common + be,a,pn %xcc, window_scheisse_from_user_common mov FAULT_CODE_WRITE | FAULT_CODE_DTLB | FAULT_CODE_WINFIXUP, %g4 retry |