Re: [PATCH v2 2/7] mm/khugepaged: extract young page check into collapse_is_referenced() helper
From: David Hildenbrand (Arm)
Date: Wed Jul 29 2026 - 05:51:32 EST
On 7/29/26 11:41, David Hildenbrand (Arm) wrote:
> On 7/15/26 04:59, Nico Pache wrote:
>> This change deduplicates the "is this PTE/folio referenced enough to be
>> considered for a collapse" condition that was repeated in both
>> __collapse_huge_page_isolate() and collapse_scan_pmd(), extracting it into
>> a single inline helper function.
>>
>> Also move the comment and use it as the function header. While we are at
>> it, updated the comment to clarify that a young pte is a recently accessed
>> one.
>>
>> Acked-by: Usama Arif <usama.arif@xxxxxxxxx>
>> Signed-off-by: Nico Pache <npache@xxxxxxxxxx>
>> ---
>> mm/khugepaged.c | 35 +++++++++++++++++++----------------
>> 1 file changed, 19 insertions(+), 16 deletions(-)
>>
>> diff --git a/mm/khugepaged.c b/mm/khugepaged.c
>> index 6ec0812210b6..e92e2b928f17 100644
>> --- a/mm/khugepaged.c
>> +++ b/mm/khugepaged.c
>> @@ -672,6 +672,23 @@ static void release_pte_pages(pte_t *pte, pte_t *_pte,
>> }
>> }
>>
>> +/*
>> + * collapse_is_referenced() - Check for enough referenced PTEs to justify collapsing
>> + *
>> + * If collapse was initiated by khugepaged, check that the page has been
>> + * recently accessed (young pte) to justify collapsing the page.
>> + *
>> + * Return: true if the page has been recently accessed.
>> + */
>> +static inline bool collapse_is_referenced(struct collapse_control *cc, pte_t pteval,
>> + struct folio *folio, struct vm_area_struct *vma, unsigned long addr)
>
>
> The name is absolutely confusing. The "collapse" is referenced? Hugh? :)
"Huh" :D
--
Cheers,
David