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

+10 -1
+9
arch/powerpc/kernel/head_book3s_32.S
··· 260 MachineCheck: 261 EXCEPTION_PROLOG_0 262 #ifdef CONFIG_PPC_CHRP 263 mfspr r11, SPRN_SPRG_THREAD 264 lwz r11, RTAS_SP(r11) 265 cmpwi cr1, r11, 0 266 bne cr1, 7f 267 #endif /* CONFIG_PPC_CHRP */ 268 EXCEPTION_PROLOG_1 for_rtas=1 269 7: EXCEPTION_PROLOG_2
··· 260 MachineCheck: 261 EXCEPTION_PROLOG_0 262 #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 271 mfspr r11, SPRN_SPRG_THREAD 272 lwz r11, RTAS_SP(r11) 273 cmpwi cr1, r11, 0 274 bne cr1, 7f 275 + #endif 276 #endif /* CONFIG_PPC_CHRP */ 277 EXCEPTION_PROLOG_1 for_rtas=1 278 7: EXCEPTION_PROLOG_2
+1 -1
arch/powerpc/kernel/vmlinux.lds.S
··· 85 ALIGN_FUNCTION(); 86 #endif 87 /* careful! __ftr_alt_* sections need to be close to .text */ 88 - *(.text.hot TEXT_MAIN .text.fixup .text.unlikely .fixup __ftr_alt_* .ref.text); 89 #ifdef CONFIG_PPC64 90 *(.tramp.ftrace.text); 91 #endif
··· 85 ALIGN_FUNCTION(); 86 #endif 87 /* careful! __ftr_alt_* sections need to be close to .text */ 88 + *(.text.hot .text.hot.* TEXT_MAIN .text.fixup .text.unlikely .text.unlikely.* .fixup __ftr_alt_* .ref.text); 89 #ifdef CONFIG_PPC64 90 *(.tramp.ftrace.text); 91 #endif