Auto NUMA does migratability check on any given VMA before scanning it for marking purpose. For now if the coherent device memory has been faulted in or migrated into a process VMA, it should not be part of the auto NUMA migration scheme. The check is based on VM_CDM flag. Signed-off-by: Anshuman Khandual <khandual@xxxxxxxxxxxxxxxxxx> --- include/linux/mempolicy.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/include/linux/mempolicy.h b/include/linux/mempolicy.h index 5e5b296..09d4b70 100644 --- a/include/linux/mempolicy.h +++ b/include/linux/mempolicy.h @@ -171,9 +171,26 @@ extern int mpol_parse_str(char *str, struct mempolicy **mpol); extern void mpol_to_str(char *buffer, int maxlen, struct mempolicy *pol); +#ifdef CONFIG_COHERENT_DEVICE +static bool is_cdm_vma(struct vm_area_struct *vma) +{ + if (vma->vm_flags & VM_CDM) + return true; + return false; +} +#else +static bool is_cdm_vma(struct vm_area_struct *vma) +{ + return false; +} +#endif + /* Check if a vma is migratable */ static inline bool vma_migratable(struct vm_area_struct *vma) { + if (is_cdm_vma(vma)) + return false; + if (vma->vm_flags & (VM_IO | VM_PFNMAP)) return false; -- 2.1.0 -- 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>