The patch titled Subject: mm-huge_memoryc-add-missing-read-only-thp-checking-in-transparent_hugepage_enabled-v4 has been added to the -mm tree. Its filename is mm-huge_memoryc-add-missing-read-only-thp-checking-in-transparent_hugepage_enabled-v4.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/mm-huge_memoryc-add-missing-read-only-thp-checking-in-transparent_hugepage_enabled-v4.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/mm-huge_memoryc-add-missing-read-only-thp-checking-in-transparent_hugepage_enabled-v4.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Miaohe Lin <linmiaohe@xxxxxxxxxx> Subject: mm-huge_memoryc-add-missing-read-only-thp-checking-in-transparent_hugepage_enabled-v4 define transhuge_vma_enabled next to transhuge_vma_suitable Link: https://lkml.kernel.org/r/20210514093007.4117906-1-linmiaohe@xxxxxxxxxx Fixes: 99cb0dbd47a1 ("mm,thp: add read-only THP support for (non-shmem) FS") Signed-off-by: Miaohe Lin <linmiaohe@xxxxxxxxxx> Reviewed-by: Yang Shi <shy828301@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/linux/huge_mm.h | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) --- a/include/linux/huge_mm.h~mm-huge_memoryc-add-missing-read-only-thp-checking-in-transparent_hugepage_enabled-v4 +++ a/include/linux/huge_mm.h @@ -115,6 +115,21 @@ extern struct kobj_attribute shmem_enabl extern unsigned long transparent_hugepage_flags; +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 (!IS_ALIGNED((vma->vm_start >> PAGE_SHIFT) - vma->vm_pgoff, + HPAGE_PMD_NR)) + return false; + } + + if (haddr < vma->vm_start || haddr + HPAGE_PMD_SIZE > vma->vm_end) + return false; + return true; +} + static inline bool transhuge_vma_enabled(struct vm_area_struct *vma, unsigned long vm_flags) { @@ -159,21 +174,6 @@ static inline bool __transparent_hugepag bool transparent_hugepage_active(struct vm_area_struct *vma); -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 (!IS_ALIGNED((vma->vm_start >> PAGE_SHIFT) - vma->vm_pgoff, - HPAGE_PMD_NR)) - return false; - } - - if (haddr < vma->vm_start || haddr + HPAGE_PMD_SIZE > vma->vm_end) - return false; - return true; -} - #define transparent_hugepage_use_zero_page() \ (transparent_hugepage_flags & \ (1<<TRANSPARENT_HUGEPAGE_USE_ZERO_PAGE_FLAG)) _ Patches currently in -mm which might be from linmiaohe@xxxxxxxxxx are mm-swapfile-use-percpu_ref-to-serialize-against-concurrent-swapoff.patch swap-fix-do_swap_page-race-with-swapoff.patch mm-swap-remove-confusing-checking-for-non_swap_entry-in-swap_ra_info.patch mm-shmem-fix-shmem_swapin-race-with-swapoff.patch mm-huge_memoryc-remove-dedicated-macro-hpage_cache_index_mask.patch mm-huge_memoryc-use-page-deferred_list.patch mm-huge_memoryc-add-missing-read-only-thp-checking-in-transparent_hugepage_enabled.patch mm-huge_memoryc-add-missing-read-only-thp-checking-in-transparent_hugepage_enabled-v4.patch mm-huge_memoryc-remove-unnecessary-tlb_remove_page_size-for-huge-zero-pmd.patch mm-huge_memoryc-dont-discard-hugepage-if-other-processes-are-mapping-it.patch