On 2021/4/29 22:48, David Hildenbrand wrote: > On 29.04.21 15:26, Miaohe Lin wrote: >> Rewrite the pgoff checking logic to remove macro HPAGE_CACHE_INDEX_MASK >> which is only used here to simplify the code. >> >> Reviewed-by: Yang Shi <shy828301@xxxxxxxxx> >> Reviewed-by: Anshuman Khandual <anshuman.khandual@xxxxxxx> >> Signed-off-by: Miaohe Lin <linmiaohe@xxxxxxxxxx> >> --- >> include/linux/huge_mm.h | 6 ++---- >> 1 file changed, 2 insertions(+), 4 deletions(-) >> >> diff --git a/include/linux/huge_mm.h b/include/linux/huge_mm.h >> index 9626fda5efce..0a526f211fec 100644 >> --- a/include/linux/huge_mm.h >> +++ b/include/linux/huge_mm.h >> @@ -152,15 +152,13 @@ static inline bool __transparent_hugepage_enabled(struct vm_area_struct *vma) >> bool transparent_hugepage_enabled(struct vm_area_struct *vma); >> -#define HPAGE_CACHE_INDEX_MASK (HPAGE_PMD_NR - 1) >> - >> static inline bool transhuge_vma_suitable(struct vm_area_struct *vma, >> unsigned long haddr) >> { >> /* Don't have to check pgoff for anonymous vma */ >> if (!vma_is_anonymous(vma)) { >> - if (((vma->vm_start >> PAGE_SHIFT) & HPAGE_CACHE_INDEX_MASK) != >> - (vma->vm_pgoff & HPAGE_CACHE_INDEX_MASK)) >> + if (!IS_ALIGNED((vma->vm_start >> PAGE_SHIFT) - vma->vm_pgoff, >> + HPAGE_PMD_NR)) >> return false; > > I'd have used > > if (!IS_ALIGNED(PHYS_PFN(vma->vm_start) - vma->vm_pgoff, > It's because I want keep the code style consistent with hugepage_vma_check(). There is similiar code in hugepage_vma_check(): return IS_ALIGNED((vma->vm_start >> PAGE_SHIFT) - vma->vm_pgoff, HPAGE_PMD_NR); > Reviewed-by: David Hildenbrand <david@xxxxxxxxxx> Many thanks for review! >