On 4/4/22 22:02, Yang Shi wrote: > The DAX vma may be seen by khugepaged when the mm has other khugepaged > suitable vmas. So khugepaged may try to collapse THP for DAX vma, but > it will fail due to page sanity check, for example, page is not > on LRU. > > So it is not harmful, but it is definitely pointless to run khugepaged > against DAX vma, so skip it in early check. > > Reviewed-by: Miaohe Lin <linmiaohe@xxxxxxxxxx> > Acked-by: Song Liu <song@xxxxxxxxxx> > Signed-off-by: Yang Shi <shy828301@xxxxxxxxx> Acked-by: Vlastimil Babka <vbabka@xxxxxxx> > --- > mm/khugepaged.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/mm/khugepaged.c b/mm/khugepaged.c > index 7d197d9e3258..964a4d2c942a 100644 > --- a/mm/khugepaged.c > +++ b/mm/khugepaged.c > @@ -447,6 +447,10 @@ static bool hugepage_vma_check(struct vm_area_struct *vma, > if (vm_flags & VM_NO_KHUGEPAGED) > return false; > > + /* Don't run khugepaged against DAX vma */ > + if (vma_is_dax(vma)) > + return false; > + > if (vma->vm_file && !IS_ALIGNED((vma->vm_start >> PAGE_SHIFT) - > vma->vm_pgoff, HPAGE_PMD_NR)) > return false;