Sfoglia il codice sorgente

ppc64: make sure to align stack pointer to 16 bytes at boot

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>
Linus Torvalds 19 anni fa
parent
commit
c05b477045
1 ha cambiato i file con 3 aggiunte e 0 eliminazioni
  1. 3 0
      arch/powerpc/kernel/head_64.S

+ 3 - 0
arch/powerpc/kernel/head_64.S

@@ -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