linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] mm/page_idle.c: remove redundant mmu notifier in aging code
@ 2026-02-03 10:26 qinyu
  2026-02-04  1:27 ` Baolin Wang
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: qinyu @ 2026-02-03 10:26 UTC (permalink / raw)
  To: akpm, david; +Cc: linux-mm, qinyu

now we have mmu_notifier_clear_young immediately follows
pmdp_clear_young_notify which internally call mmu_notifier_clear_young,
this is redundant. change it with non-notify variant and keep consistent
with ptep aging code.

Signed-off-by: qinyu <qin.yuA@h3c.com>
---
 mm/page_idle.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/page_idle.c b/mm/page_idle.c
index 96bb94c7b..9c67cbac2 100644
--- a/mm/page_idle.c
+++ b/mm/page_idle.c
@@ -74,7 +74,7 @@ static bool page_idle_clear_pte_refs_one(struct folio *folio,
 			pmd_t pmdval = pmdp_get(pvmw.pmd);
 
 			if (likely(pmd_present(pmdval)))
-				referenced |= pmdp_clear_young_notify(vma, addr, pvmw.pmd);
+				referenced |= pmdp_test_and_clear_young(vma, addr, pvmw.pmd);
 			referenced |= mmu_notifier_clear_young(vma->vm_mm, addr, addr + PMD_SIZE);
 		} else {
 			/* unexpected pmd-mapped page? */
-- 
2.33.0



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] mm/page_idle.c: remove redundant mmu notifier in aging code
  2026-02-03 10:26 [PATCH] mm/page_idle.c: remove redundant mmu notifier in aging code qinyu
@ 2026-02-04  1:27 ` Baolin Wang
  2026-02-04  6:10 ` SeongJae Park
  2026-02-04 17:04 ` David Hildenbrand (arm)
  2 siblings, 0 replies; 5+ messages in thread
From: Baolin Wang @ 2026-02-04  1:27 UTC (permalink / raw)
  To: qinyu, akpm, david; +Cc: linux-mm



On 2/3/26 6:26 PM, qinyu wrote:
> now we have mmu_notifier_clear_young immediately follows
> pmdp_clear_young_notify which internally call mmu_notifier_clear_young,
> this is redundant. change it with non-notify variant and keep consistent
> with ptep aging code.
> 
> Signed-off-by: qinyu <qin.yuA@h3c.com>
> ---

LGTM.
Reviewed-by: Baolin Wang <baolin.wang@linux.alibaba.com>

>   mm/page_idle.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/mm/page_idle.c b/mm/page_idle.c
> index 96bb94c7b..9c67cbac2 100644
> --- a/mm/page_idle.c
> +++ b/mm/page_idle.c
> @@ -74,7 +74,7 @@ static bool page_idle_clear_pte_refs_one(struct folio *folio,
>   			pmd_t pmdval = pmdp_get(pvmw.pmd);
>   
>   			if (likely(pmd_present(pmdval)))
> -				referenced |= pmdp_clear_young_notify(vma, addr, pvmw.pmd);
> +				referenced |= pmdp_test_and_clear_young(vma, addr, pvmw.pmd);
>   			referenced |= mmu_notifier_clear_young(vma->vm_mm, addr, addr + PMD_SIZE);
>   		} else {
>   			/* unexpected pmd-mapped page? */



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] mm/page_idle.c: remove redundant mmu notifier in aging code
  2026-02-03 10:26 [PATCH] mm/page_idle.c: remove redundant mmu notifier in aging code qinyu
  2026-02-04  1:27 ` Baolin Wang
@ 2026-02-04  6:10 ` SeongJae Park
  2026-02-04 17:04 ` David Hildenbrand (arm)
  2 siblings, 0 replies; 5+ messages in thread
From: SeongJae Park @ 2026-02-04  6:10 UTC (permalink / raw)
  To: qinyu; +Cc: SeongJae Park, akpm, david, linux-mm

On Tue, 3 Feb 2026 18:26:49 +0800 qinyu <qin.yuA@h3c.com> wrote:

> now we have mmu_notifier_clear_young immediately follows
> pmdp_clear_young_notify which internally call mmu_notifier_clear_young,
> this is redundant. change it with non-notify variant and keep consistent
> with ptep aging code.
> 
> Signed-off-by: qinyu <qin.yuA@h3c.com>

Reviewed-by: SeongJae Park <sj@kernel.org>


Thanks,
SJ

[...]


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] mm/page_idle.c: remove redundant mmu notifier in aging code
  2026-02-03 10:26 [PATCH] mm/page_idle.c: remove redundant mmu notifier in aging code qinyu
  2026-02-04  1:27 ` Baolin Wang
  2026-02-04  6:10 ` SeongJae Park
@ 2026-02-04 17:04 ` David Hildenbrand (arm)
  2026-02-05  1:27   ` SeongJae Park
  2 siblings, 1 reply; 5+ messages in thread
From: David Hildenbrand (arm) @ 2026-02-04 17:04 UTC (permalink / raw)
  To: qinyu, akpm; +Cc: linux-mm

On 2/3/26 11:26, qinyu wrote:
> now we have mmu_notifier_clear_young immediately follows
> pmdp_clear_young_notify which internally call mmu_notifier_clear_young,
> this is redundant. change it with non-notify variant and keep consistent
> with ptep aging code.
> 
> Signed-off-by: qinyu <qin.yuA@h3c.com>
> ---
>   mm/page_idle.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/mm/page_idle.c b/mm/page_idle.c
> index 96bb94c7b..9c67cbac2 100644
> --- a/mm/page_idle.c
> +++ b/mm/page_idle.c
> @@ -74,7 +74,7 @@ static bool page_idle_clear_pte_refs_one(struct folio *folio,
>   			pmd_t pmdval = pmdp_get(pvmw.pmd);
>   
>   			if (likely(pmd_present(pmdval)))
> -				referenced |= pmdp_clear_young_notify(vma, addr, pvmw.pmd);
> +				referenced |= pmdp_test_and_clear_young(vma, addr, pvmw.pmd);
>   			referenced |= mmu_notifier_clear_young(vma->vm_mm, addr, addr + PMD_SIZE);
>   		} else {
>   			/* unexpected pmd-mapped page? */


... and it's now consistent with the pte case.

Will you also take care of mm/damon/ops-common.c:damon_pmdp_mkold() that 
does the same thing?

Acked-by: David Hildenbrand (arm) <david@kernel.org>

-- 
Cheers,

David


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] mm/page_idle.c: remove redundant mmu notifier in aging code
  2026-02-04 17:04 ` David Hildenbrand (arm)
@ 2026-02-05  1:27   ` SeongJae Park
  0 siblings, 0 replies; 5+ messages in thread
From: SeongJae Park @ 2026-02-05  1:27 UTC (permalink / raw)
  To: David Hildenbrand (arm); +Cc: SeongJae Park, qinyu, akpm, linux-mm

On Wed, 4 Feb 2026 18:04:34 +0100 "David Hildenbrand (arm)" <david@kernel.org> wrote:

> On 2/3/26 11:26, qinyu wrote:
> > now we have mmu_notifier_clear_young immediately follows
> > pmdp_clear_young_notify which internally call mmu_notifier_clear_young,
> > this is redundant. change it with non-notify variant and keep consistent
> > with ptep aging code.
> > 
> > Signed-off-by: qinyu <qin.yuA@h3c.com>
> > ---
> >   mm/page_idle.c | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/mm/page_idle.c b/mm/page_idle.c
> > index 96bb94c7b..9c67cbac2 100644
> > --- a/mm/page_idle.c
> > +++ b/mm/page_idle.c
> > @@ -74,7 +74,7 @@ static bool page_idle_clear_pte_refs_one(struct folio *folio,
> >   			pmd_t pmdval = pmdp_get(pvmw.pmd);
> >   
> >   			if (likely(pmd_present(pmdval)))
> > -				referenced |= pmdp_clear_young_notify(vma, addr, pvmw.pmd);
> > +				referenced |= pmdp_test_and_clear_young(vma, addr, pvmw.pmd);
> >   			referenced |= mmu_notifier_clear_young(vma->vm_mm, addr, addr + PMD_SIZE);
> >   		} else {
> >   			/* unexpected pmd-mapped page? */
> 
> 
> ... and it's now consistent with the pte case.
> 
> Will you also take care of mm/damon/ops-common.c:damon_pmdp_mkold() that 
> does the same thing?

Thank you for suggesting that, David.  And thankfully qinyu did:

https://lore.kernel.org/20260203095400.2465255-1-qin.yuA@h3c.com


Thanks,
SJ

[...]


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-02-05  1:27 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-02-03 10:26 [PATCH] mm/page_idle.c: remove redundant mmu notifier in aging code qinyu
2026-02-04  1:27 ` Baolin Wang
2026-02-04  6:10 ` SeongJae Park
2026-02-04 17:04 ` David Hildenbrand (arm)
2026-02-05  1:27   ` SeongJae Park

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox