]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
powerpc/8xx: Move tail of alignment exception out of line
authorMichael Ellerman <mpe@ellerman.id.au>
Sat, 25 Jan 2020 13:20:16 +0000 (00:20 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 27 Jan 2020 11:36:59 +0000 (22:36 +1100)
When we enable VMAP_STACK there will not be enough room for the
alignment handler at 0x600 in head_8xx.S. For now move the tail of the
alignment handler out of line, and branch to it.

Suggested-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/kernel/head_8xx.S

index 225e242ce1c558e7cc548a2760aab6eda30bea04..a6b1b7af2217a0a75525f3b298153e03f01dfc9a 100644 (file)
@@ -145,7 +145,7 @@ Alignment:
        li      r6, RPN_PATTERN
        mtspr   SPRN_DAR, r6    /* Tag DAR, to be used in DTLB Error */
        addi    r3,r1,STACK_FRAME_OVERHEAD
-       EXC_XFER_STD(0x600, alignment_exception)
+       b       .Lalignment_exception_ool
 
 /* Program check exception */
        EXCEPTION(0x700, ProgramCheck, program_check_exception, EXC_XFER_STD)
@@ -153,6 +153,11 @@ Alignment:
 /* Decrementer */
        EXCEPTION(0x900, Decrementer, timer_interrupt, EXC_XFER_LITE)
 
+       /* With VMAP_STACK there's not enough room for this at 0x600 */
+       . = 0xa00
+.Lalignment_exception_ool:
+       EXC_XFER_STD(0x600, alignment_exception)
+
 /* System call */
        . = 0xc00
 SystemCall: