Re: [PATCH 4/6] mm: change to return bool for pmdp_clear_flush_young()
Baolin Wang <[email protected]>
| Newsgroups | org.kernel.vger.linux-parisc,org.infradead.lists.linux-arm-kernel,org.infradead.lists.linux-riscv,org.kernel.vger.kvm,org.kernel.vger.linux-kernel,org.kernel.vger.linux-s390,org.kvack.linux-mm,org.ozlabs.lists.linuxppc-dev |
|---|---|
| Message-ID | <[email protected]> |
On 3/19/26 7:33 PM, Lorenzo Stoakes (Oracle) wrote: > On Thu, Mar 19, 2026 at 11:24:03AM +0800, Baolin Wang wrote: >> The pmdp_clear_flush_young() is used to clear the young flag and flush the >> TLB, returning whether the young flag was set for this PMD entry. Change >> the return type to bool to make the intention clearer. >> >> Signed-off-by: Baolin Wang <[email protected]> > > Some nits, but otherwise LGTM, so: > > Reviewed-by: Lorenzo Stoakes (Oracle) <[email protected]> > >> --- >> arch/s390/include/asm/pgtable.h | 4 ++-- >> arch/x86/include/asm/pgtable.h | 4 ++-- >> arch/x86/mm/pgtable.c | 6 +++--- >> include/linux/pgtable.h | 10 +++++----- >> mm/pgtable-generic.c | 7 ++++--- >> 5 files changed, 16 insertions(+), 15 deletions(-) >> >> diff --git a/arch/s390/include/asm/pgtable.h b/arch/s390/include/asm/pgtable.h >> index 1f5efb7be71d..90bba85ca4b8 100644 >> --- a/arch/s390/include/asm/pgtable.h >> +++ b/arch/s390/include/asm/pgtable.h >> @@ -1693,8 +1693,8 @@ static inline bool pmdp_test_and_clear_young(struct vm_area_struct *vma, >> } >> >> #define __HAVE_ARCH_PMDP_CLEAR_YOUNG_FLUSH >> -static inline int pmdp_clear_flush_young(struct vm_area_struct *vma, >> - unsigned long addr, pmd_t *pmdp) >> +static inline bool pmdp_clear_flush_young(struct vm_area_struct *vma, >> + unsigned long addr, pmd_t *pmdp) > > Same indentation comment as with other patches, 2 tabs you know the drill :) > applies to all such in this patch. > >> { >> VM_BUG_ON(addr & ~HPAGE_MASK); >> return pmdp_test_and_clear_young(vma, addr, pmdp); >> diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h >> index bd02ee730a23..f9439449c9bd 100644 >> --- a/arch/x86/include/asm/pgtable.h >> +++ b/arch/x86/include/asm/pgtable.h >> @@ -1301,8 +1301,8 @@ extern int pudp_test_and_clear_young(struct vm_area_struct *vma, >> unsigned long addr, pud_t *pudp); >> >> #define __HAVE_ARCH_PMDP_CLEAR_YOUNG_FLUSH >> -extern int pmdp_clear_flush_young(struct vm_area_struct *vma, >> - unsigned long address, pmd_t *pmdp); >> +extern bool pmdp_clear_flush_young(struct vm_area_struct *vma, >> + unsigned long address, pmd_t *pmdp); > > Drop the extern please! Ack. >> #define __HAVE_ARCH_PMDP_HUGE_GET_AND_CLEAR >> diff --git a/arch/x86/mm/pgtable.c b/arch/x86/mm/pgtable.c >> index 10a5e0b2be36..8c336edf0e65 100644 >> --- a/arch/x86/mm/pgtable.c >> +++ b/arch/x86/mm/pgtable.c >> @@ -503,10 +503,10 @@ bool ptep_clear_flush_young(struct vm_area_struct *vma, >> } >> >> #ifdef CONFIG_TRANSPARENT_HUGEPAGE >> -int pmdp_clear_flush_young(struct vm_area_struct *vma, >> - unsigned long address, pmd_t *pmdp) >> +bool pmdp_clear_flush_young(struct vm_area_struct *vma, >> + unsigned long address, pmd_t *pmdp) >> { >> - int young; >> + bool young; >> >> VM_BUG_ON(address & ~HPAGE_PMD_MASK); >> >> diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h >> index e53220b0a9a3..8b8838f19af3 100644 >> --- a/include/linux/pgtable.h >> +++ b/include/linux/pgtable.h >> @@ -536,18 +536,18 @@ bool ptep_clear_flush_young(struct vm_area_struct *vma, >> >> #ifndef __HAVE_ARCH_PMDP_CLEAR_YOUNG_FLUSH >> #ifdef CONFIG_TRANSPARENT_HUGEPAGE >> -extern int pmdp_clear_flush_young(struct vm_area_struct *vma, >> - unsigned long address, pmd_t *pmdp); >> +bool pmdp_clear_flush_young(struct vm_area_struct *vma, >> + unsigned long address, pmd_t *pmdp); > > Ahh! Here you drop the extern :) AND use 2 tabs :)) thanks! Right. Because this is the mm subsystem, and I know the maintainers' preferences:)