ppc64: make sure to align stack pointer to 16 bytes at boot
authorLinus Torvalds <torvalds@quad.osdl.org>
Sat, 4 Mar 2006 23:00:45 +0000 (15:00 -0800)
committerLinus Torvalds <torvalds@quad.osdl.org>
Sat, 4 Mar 2006 23:00:45 +0000 (15:00 -0800)
yaboot is scrogged and calls us with an invalid stack alignment,
it seems.

Thanks to David Woodhouse to pointing me to the problem.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/powerpc/kernel/head_64.S

index 11f2cd5..9b65029 100644 (file)
@@ -1537,6 +1537,9 @@ _STATIC(__boot_from_prom)
        mr      r28,r6
        mr      r27,r7
 
+       /* Align the stack to 16-byte boundary for broken yaboot */
+       rldicr  r1,r1,0,59
+
        /* Make sure we are running in 64 bits mode */
        bl      .enable_64b_mode