Michael Ellerman <m...@ellerman.id.au> writes: > Kunwu Chan <chen...@kylinos.cn> writes: >> Thanks for the reply. >> >> On 2024/2/26 18:49, Michael Ellerman wrote: >>> Kunwu Chan <chen...@kylinos.cn> writes: >>>> This part was commented from commit 6d492ecc6489 >>>> ("powerpc/THP: Add code to handle HPTE faults for hugepages") >>>> in about 11 years before. >>>> >>>> If there are no plans to enable this part code in the future, >>>> we can remove this dead code. >>> >>> I agree the code can go. But I'd like it to be replaced with a comment >>> explaining what the dead code was trying to say. > >> Thanks, i'll update a new patch with the following comment: >> /* >> * No CPU has hugepages but lacks no execute, so we >> * don't need to worry about cpu no CPU_FTR_COHERENT_ICACHE feature case >> */ > > Maybe wait until we can get some input from Aneesh. I'm not sure the > code/comment are really up to date. > > cheers
How about? modified arch/powerpc/mm/book3s64/hash_hugepage.c @@ -58,17 +58,13 @@ int __hash_page_thp(unsigned long ea, unsigned long access, unsigned long vsid, return 0; rflags = htab_convert_pte_flags(new_pmd, flags); + /* + * THPs are only supported on platforms that can do mixed page size + * segments (MPSS) and all such platforms have coherent icache. Hence we + * don't need to do lazy icache flush (hash_page_do_lazy_icache()) on + * noexecute fault. + */ -#if 0 - if (!cpu_has_feature(CPU_FTR_COHERENT_ICACHE)) { - - /* - * No CPU has hugepages but lacks no execute, so we - * don't need to worry about that case - */ - rflags = hash_page_do_lazy_icache(rflags, __pte(old_pte), trap); - } -#endif /* * Find the slot index details for this ea, using base page size. */