[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87bk80kjup.fsf@kernel.org>
Date: Thu, 29 Feb 2024 09:22:30 +0530
From: Aneesh Kumar K.V <aneesh.kumar@...nel.org>
To: Michael Ellerman <mpe@...erman.id.au>, Kunwu Chan <chentao@...inos.cn>,
npiggin@...il.com, christophe.leroy@...roup.eu,
naveen.n.rao@...ux.ibm.com
Cc: linuxppc-dev@...ts.ozlabs.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] powerpc/mm: Code cleanup for __hash_page_thp
Michael Ellerman <mpe@...erman.id.au> writes:
> Kunwu Chan <chentao@...inos.cn> writes:
>> Thanks for the reply.
>>
>> On 2024/2/26 18:49, Michael Ellerman wrote:
>>> Kunwu Chan <chentao@...inos.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.
*/
Powered by blists - more mailing lists