Re: [PATCH 1/5] powerpc: Remove flush_instruction_cache for book3s/32
Le 13/08/2020 à 14:14, Christoph Hellwig a écrit : On Thu, Aug 13, 2020 at 01:13:08PM +0100, Christoph Hellwig wrote: On Thu, Aug 13, 2020 at 10:12:00AM +, Christophe Leroy wrote: -#ifndef CONFIG_PPC_8xx +#if !defined(CONFIG_PPC_8xx) && !defined(CONFIG_PPC_BOOK3S_32) _GLOBAL(flush_instruction_cache) #if defined(CONFIG_4xx) lis r3, KERNELBASE@h @@ -290,18 +289,11 @@ _GLOBAL(flush_instruction_cache) mfspr r3,SPRN_L1CSR1 ori r3,r3,L1CSR1_ICFI|L1CSR1_ICLFR mtspr SPRN_L1CSR1,r3 -#elif defined(CONFIG_PPC_BOOK3S_601) - blr /* for 601, do nothing */ -#else - /* 603/604 processor - use invalidate-all bit in HID0 */ - mfspr r3,SPRN_HID0 - ori r3,r3,HID0_ICFI - mtspr SPRN_HID0,r3 #endif /* CONFIG_4xx */ isync blr EXPORT_SYMBOL(flush_instruction_cache) -#endif /* CONFIG_PPC_8xx */ +#endif /* CONFIG_PPC_8xx || CONFIG_PPC_BOOK3S_32 */ What about untangling this into entirely separate versions instead of the ifdef mess? Also the export does not seem to be needed at all. Ok, I see that you do that later, sorry. In v2, I drop the untangling patch, because the series completely dismantles flush_instruction_cache() so there is no need for an ephemeral untanggled version of it. Christophe
Re: [PATCH 1/5] powerpc: Remove flush_instruction_cache for book3s/32
On Thu, Aug 13, 2020 at 01:13:08PM +0100, Christoph Hellwig wrote: > On Thu, Aug 13, 2020 at 10:12:00AM +, Christophe Leroy wrote: > > -#ifndef CONFIG_PPC_8xx > > +#if !defined(CONFIG_PPC_8xx) && !defined(CONFIG_PPC_BOOK3S_32) > > _GLOBAL(flush_instruction_cache) > > #if defined(CONFIG_4xx) > > lis r3, KERNELBASE@h > > @@ -290,18 +289,11 @@ _GLOBAL(flush_instruction_cache) > > mfspr r3,SPRN_L1CSR1 > > ori r3,r3,L1CSR1_ICFI|L1CSR1_ICLFR > > mtspr SPRN_L1CSR1,r3 > > -#elif defined(CONFIG_PPC_BOOK3S_601) > > - blr /* for 601, do nothing */ > > -#else > > - /* 603/604 processor - use invalidate-all bit in HID0 */ > > - mfspr r3,SPRN_HID0 > > - ori r3,r3,HID0_ICFI > > - mtspr SPRN_HID0,r3 > > #endif /* CONFIG_4xx */ > > isync > > blr > > EXPORT_SYMBOL(flush_instruction_cache) > > -#endif /* CONFIG_PPC_8xx */ > > +#endif /* CONFIG_PPC_8xx || CONFIG_PPC_BOOK3S_32 */ > > What about untangling this into entirely separate versions instead > of the ifdef mess? Also the export does not seem to be needed at all. Ok, I see that you do that later, sorry.
Re: [PATCH 1/5] powerpc: Remove flush_instruction_cache for book3s/32
On Thu, Aug 13, 2020 at 10:12:00AM +, Christophe Leroy wrote: > -#ifndef CONFIG_PPC_8xx > +#if !defined(CONFIG_PPC_8xx) && !defined(CONFIG_PPC_BOOK3S_32) > _GLOBAL(flush_instruction_cache) > #if defined(CONFIG_4xx) > lis r3, KERNELBASE@h > @@ -290,18 +289,11 @@ _GLOBAL(flush_instruction_cache) > mfspr r3,SPRN_L1CSR1 > ori r3,r3,L1CSR1_ICFI|L1CSR1_ICLFR > mtspr SPRN_L1CSR1,r3 > -#elif defined(CONFIG_PPC_BOOK3S_601) > - blr /* for 601, do nothing */ > -#else > - /* 603/604 processor - use invalidate-all bit in HID0 */ > - mfspr r3,SPRN_HID0 > - ori r3,r3,HID0_ICFI > - mtspr SPRN_HID0,r3 > #endif /* CONFIG_4xx */ > isync > blr > EXPORT_SYMBOL(flush_instruction_cache) > -#endif /* CONFIG_PPC_8xx */ > +#endif /* CONFIG_PPC_8xx || CONFIG_PPC_BOOK3S_32 */ What about untangling this into entirely separate versions instead of the ifdef mess? Also the export does not seem to be needed at all.