On Fri, 11 Nov 2016 20:21:41 -0800 Dan Williams <dan.j.williams@xxxxxxxxx> wrote: > Mark dax vmas as not migratable to exclude them from task_numa_work(). > This is especially relevant for device-dax which wants to ensure > predictable access latency and not incur periodic faults. > > ... > > @@ -177,6 +178,9 @@ static inline bool vma_migratable(struct vm_area_struct *vma) > if (vma->vm_flags & (VM_IO | VM_PFNMAP)) > return false; > > + if (vma_is_dax(vma)) > + return false; > + > #ifndef CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION > if (vma->vm_flags & VM_HUGETLB) > return false; I don't think the reader could figure out why this code is here, so... this? --- a/include/linux/mempolicy.h~mm-disable-numa-migration-faults-for-dax-vmas-fix +++ a/include/linux/mempolicy.h @@ -180,6 +180,10 @@ static inline bool vma_migratable(struct if (vma->vm_flags & (VM_IO | VM_PFNMAP)) return false; + /* + * DAX device mappings require predictable access latency, so avoid + * incurring periodic faults. + */ if (vma_is_dax(vma)) return false; _ -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>