powerpc: Fix usage of 64-bit instruction in 32-bit altivec code
Benjamin Herrenschmidt
benh at kernel.crashing.org
Wed Dec 9 15:45:45 EST 2009
e821ea70f3b4873b50056a1e0f74befed1014c09 introduced a bug by copying
some 64-bit originated code as-is to be used by both 32 and 64-bit
but this code contains a 64-bit ony "cmpdi" instruction.
This changes it to cmpwi, which is fine since VRSAVE can only contains
a 32-bit value anyway.
Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
CC: <stable at kernel.org>
---
I'm adding that to -next now so it goes into stable shortly after
I push to Linus, hopefully tomorrow
Index: linux-work/arch/powerpc/kernel/vector.S
===================================================================
--- linux-work.orig/arch/powerpc/kernel/vector.S 2009-12-09 15:39:55.000000000 +1100
+++ linux-work/arch/powerpc/kernel/vector.S 2009-12-09 15:39:58.000000000 +1100
@@ -58,7 +58,7 @@ _GLOBAL(load_up_altivec)
* all 1's
*/
mfspr r4,SPRN_VRSAVE
- cmpdi 0,r4,0
+ cmpwi 0,r4,0
bne+ 1f
li r4,-1
mtspr SPRN_VRSAVE,r4
More information about the Linuxppc-dev
mailing list