Re: [PATCH v5 17/17] powerpc/32s: Enable CONFIG_VMAP_STACK
From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2020-01-18 12:46:11
Also in:
linux-mm, lkml
From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2020-01-18 12:46:11
Also in:
linux-mm, lkml
Christophe Leroy [off-list ref] writes:
diff --git a/arch/powerpc/kernel/head_32.S b/arch/powerpc/kernel/head_32.S index 90ef355e958b..3be041166db4 100644 --- a/arch/powerpc/kernel/head_32.S +++ b/arch/powerpc/kernel/head_32.S@@ -272,14 +272,20 @@ __secondary_hold_acknowledge: */ . = 0x200 DO_KVM 0x200 +MachineCheck: EXCEPTION_PROLOG_0 +#ifdef CONFIG_VMAP_STACK + li r11, MSR_KERNEL & ~(MSR_IR | MSR_RI) /* can take DTLB miss */ + mtmsr r11 +#endif #ifdef CONFIG_PPC_CHRP mfspr r11, SPRN_SPRG_THREAD + tovirt_vmstack(r11, r11)
This didn't build:
arch/powerpc/kernel/head_32.S:283: Error: syntax error; found `r', expected `,'
arch/powerpc/kernel/head_32.S:283: Error: found 'r', expected: ')'
arch/powerpc/kernel/head_32.S:283: Error: bad expression
arch/powerpc/kernel/head_32.S:283: Error: junk at end of line: `r11,%r11),0xc0000000@h'
I fixed it by dropping the brackets.
cheers