Skip to content

Commit b3cd1a1

Browse files
committed
Merge tag 'powerpc-5.11-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux
Pull powerpc fixes from Michael Ellerman: - A fix for machine check handling with VMAP stack on 32-bit. - A clang build fix. Thanks to Christophe Leroy and Nathan Chancellor. * tag 'powerpc-5.11-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: powerpc: Handle .text.{hot,unlikely}.* in linker script powerpc/32s: Fix RTAS machine check with VMAP stack
2 parents a440e4d + 3ce47d9 commit b3cd1a1

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

arch/powerpc/kernel/head_book3s_32.S

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,10 +260,19 @@ __secondary_hold_acknowledge:
260260
MachineCheck:
261261
EXCEPTION_PROLOG_0
262262
#ifdef CONFIG_PPC_CHRP
263+
#ifdef CONFIG_VMAP_STACK
264+
mtspr SPRN_SPRG_SCRATCH2,r1
265+
mfspr r1, SPRN_SPRG_THREAD
266+
lwz r1, RTAS_SP(r1)
267+
cmpwi cr1, r1, 0
268+
bne cr1, 7f
269+
mfspr r1, SPRN_SPRG_SCRATCH2
270+
#else
263271
mfspr r11, SPRN_SPRG_THREAD
264272
lwz r11, RTAS_SP(r11)
265273
cmpwi cr1, r11, 0
266274
bne cr1, 7f
275+
#endif
267276
#endif /* CONFIG_PPC_CHRP */
268277
EXCEPTION_PROLOG_1 for_rtas=1
269278
7: EXCEPTION_PROLOG_2

arch/powerpc/kernel/vmlinux.lds.S

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ SECTIONS
8585
ALIGN_FUNCTION();
8686
#endif
8787
/* careful! __ftr_alt_* sections need to be close to .text */
88-
*(.text.hot TEXT_MAIN .text.fixup .text.unlikely .fixup __ftr_alt_* .ref.text);
88+
*(.text.hot .text.hot.* TEXT_MAIN .text.fixup .text.unlikely .text.unlikely.* .fixup __ftr_alt_* .ref.text);
8989
#ifdef CONFIG_PPC64
9090
*(.tramp.ftrace.text);
9191
#endif

0 commit comments

Comments
 (0)