Excerpts from Christophe Leroy's message of November 9, 2020 2:57 am: > In head_64.S, we have two places using RFI to return to > kernel. Use RFI_TO_KERNEL instead. > > They are the two only places using RFI on book3s/64, so > the RFI macro can go away.
Looks good to me. Acked-by: Nicholas Piggin <npig...@gmail.com> > > Signed-off-by: Christophe Leroy <christophe.le...@csgroup.eu> > --- > arch/powerpc/include/asm/ppc_asm.h | 1 - > arch/powerpc/kernel/head_64.S | 9 +++++++-- > 2 files changed, 7 insertions(+), 3 deletions(-) > > diff --git a/arch/powerpc/include/asm/ppc_asm.h > b/arch/powerpc/include/asm/ppc_asm.h > index 511786f0e40d..bedf3eb52ebc 100644 > --- a/arch/powerpc/include/asm/ppc_asm.h > +++ b/arch/powerpc/include/asm/ppc_asm.h > @@ -495,7 +495,6 @@ END_FTR_SECTION_NESTED(CPU_FTR_CELL_TB_BUG, > CPU_FTR_CELL_TB_BUG, 96) > #endif > > #ifdef CONFIG_PPC_BOOK3S_64 > -#define RFI rfid > #define MTMSRD(r) mtmsrd r > #define MTMSR_EERI(reg) mtmsrd reg,1 > #else > diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S > index 1510b2a56669..ecf9a88988ff 100644 > --- a/arch/powerpc/kernel/head_64.S > +++ b/arch/powerpc/kernel/head_64.S > @@ -41,6 +41,11 @@ > #include <asm/ppc-opcode.h> > #include <asm/export.h> > #include <asm/feature-fixups.h> > +#ifdef CONFIG_PPC_BOOK3S > +#include <asm/exception-64s.h> > +#else > +#include <asm/exception-64e.h> > +#endif > > /* The physical memory is laid out such that the secondary processor > * spin code sits at 0x0000...0x00ff. On server, the vectors follow > @@ -829,7 +834,7 @@ __secondary_start: > > mtspr SPRN_SRR0,r3 > mtspr SPRN_SRR1,r4 > - RFI > + RFI_TO_KERNEL > b . /* prevent speculative execution */ > > /* > @@ -966,7 +971,7 @@ start_here_multiplatform: > ld r4,PACAKMSR(r13) > mtspr SPRN_SRR0,r3 > mtspr SPRN_SRR1,r4 > - RFI > + RFI_TO_KERNEL > b . /* prevent speculative execution */ > > /* This is where all platforms converge execution */ > -- > 2.25.0 > >