]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
mm: change to return bool for pmdp_clear_flush_young()
authorBaolin Wang <baolin.wang@linux.alibaba.com>
Sat, 21 Mar 2026 06:42:52 +0000 (14:42 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Sun, 5 Apr 2026 20:53:35 +0000 (13:53 -0700)
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.

Link: https://lkml.kernel.org/r/a668b9a974c0d675e7a41f6973bcbe3336e8b373.1774075004.git.baolin.wang@linux.alibaba.com
Signed-off-by: Baolin Wang <baolin.wang@linux.alibaba.com>
Reviewed-by: Lorenzo Stoakes (Oracle) <ljs@kernel.org>
Acked-by: David Hildenbrand (Arm) <david@kernel.org>
Cc: Liam Howlett <liam.howlett@oracle.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Ritesh Harjani (IBM) <ritesh.list@gmail.com>
Cc: Suren Baghdasaryan <surenb@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
arch/s390/include/asm/pgtable.h
arch/x86/include/asm/pgtable.h
arch/x86/mm/pgtable.c
include/linux/pgtable.h
mm/pgtable-generic.c

index 87a5082da28e45375071f72bda625a6672195d15..40a6fb19dd1dcee7880b21894564250d5d60cc89 100644 (file)
@@ -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)
 {
        VM_BUG_ON(addr & ~HPAGE_MASK);
        return pmdp_test_and_clear_young(vma, addr, pmdp);
index ba867bac6096cb8b83063410d7920b3e9362eb1d..6c8f2b17d3f986177cc1137eefffcc0c5c2bff1f 100644 (file)
@@ -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);
+bool pmdp_clear_flush_young(struct vm_area_struct *vma,
+               unsigned long address, pmd_t *pmdp);
 
 
 #define __HAVE_ARCH_PMDP_HUGE_GET_AND_CLEAR
index b09e8c5dadf93370f465f0408fd5d2bf4ae1d7bc..fc1c996c5b2d7177c15efc72ea81b2d6fe1fd9ee 100644 (file)
@@ -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);
 
index 6db900a5d38b4d1f610e80723c36b3e7483c4cff..cdd68ed3ae1a90bea6696bf5e06bc422e9293e5e 100644 (file)
@@ -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);
 #else
 /*
  * Despite relevant to THP only, this API is called from generic rmap code
  * under PageTransHuge(), hence needs a dummy implementation for !THP
  */
-static inline int pmdp_clear_flush_young(struct vm_area_struct *vma,
-                                        unsigned long address, pmd_t *pmdp)
+static inline bool pmdp_clear_flush_young(struct vm_area_struct *vma,
+               unsigned long address, pmd_t *pmdp)
 {
        BUILD_BUG();
-       return 0;
+       return false;
 }
 #endif /* CONFIG_TRANSPARENT_HUGEPAGE */
 #endif
index db0ee918b08a427633dc7693f24fda583a764af5..b91b1a98029c7f8b8d38901e94f74545b5d3cabf 100644 (file)
@@ -124,10 +124,11 @@ int pmdp_set_access_flags(struct vm_area_struct *vma,
 #endif
 
 #ifndef __HAVE_ARCH_PMDP_CLEAR_YOUNG_FLUSH
-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);
        young = pmdp_test_and_clear_young(vma, address, pmdp);
        if (young)