On Fri, Jul 30, 2021 at 12:36 AM Hugh Dickins <hughd@xxxxxxxxxx> wrote: > > 5.14 commit e6be37b2e7bd ("mm/huge_memory.c: add missing read-only THP > checking in transparent_hugepage_enabled()") added transhuge_vma_enabled() > as a wrapper for two very different checks: shmem_huge_enabled() prefers > to show those two checks explicitly, as before. Basically I have no objection to separating them again. But IMHO they seem not very different. Or just makes things easier for the following patches? > > Signed-off-by: Hugh Dickins <hughd@xxxxxxxxxx> > --- > mm/shmem.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/mm/shmem.c b/mm/shmem.c > index ce3ccaac54d6..c6fa6f4f2db8 100644 > --- a/mm/shmem.c > +++ b/mm/shmem.c > @@ -4003,7 +4003,8 @@ bool shmem_huge_enabled(struct vm_area_struct *vma) > loff_t i_size; > pgoff_t off; > > - if (!transhuge_vma_enabled(vma, vma->vm_flags)) > + if ((vma->vm_flags & VM_NOHUGEPAGE) || > + test_bit(MMF_DISABLE_THP, &vma->vm_mm->flags)) > return false; > if (shmem_huge == SHMEM_HUGE_FORCE) > return true; > -- > 2.26.2 >