From 3cde0f50b921b30e63da155b5ade81bb59bedf0a Mon Sep 17 00:00:00 2001 From: Lijun Fang Date: Mon, 27 May 2019 16:44:43 +0800 Subject: [PATCH] mm/cdm: Fix compile error if not set NUMA config hulk inclusion category: bugfix bugzilla: 16090 CVE: NA ------------------- the CONFIG_COHERENT_DEVICE must depends on CONFIG_NUMA, if not, when singly config COHERENT_DEVICE, it will cause compile error. Fixes: a72a680ff761 ("mm: Tag VMA with VM_CDM flag explicitly during mbind(MPOL_BIND) and page fault") Fixes: 5458fde3b255 ("mm: Ignore madvise(MADV_MERGEABLE) request for VM_CDM marked VMAs") Signed-off-by: Lijun Fang Reviewed-by: Li Zefan Signed-off-by: Yang Yingliang --- mm/Kconfig | 3 +-- mm/hugetlb.c | 3 ++- mm/ksm.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/mm/Kconfig b/mm/Kconfig index 114d78e74ed3..67b9a27e19bf 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -145,11 +145,10 @@ config ARCH_DISCARD_MEMBLOCK config COHERENT_DEVICE bool "coherent device memory" def_bool n - depends on CPUSETS && ARM64 + depends on CPUSETS && ARM64 && NUMA help Enable coherent device memory (CDM) support. - config NO_BOOTMEM bool diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 490051721866..712061ae3911 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -890,9 +890,10 @@ static struct page *dequeue_huge_page_nodemask(struct hstate *h, gfp_t gfp_mask, int node = -1; bool mbind_cdmnode = false; +#ifdef CONFIG_COHERENT_DEVICE if (is_cdm_node(nid) && mpol != NULL && mpol->mode == MPOL_BIND) mbind_cdmnode = true; - +#endif zonelist = node_zonelist(nid, gfp_mask); retry_cpuset: diff --git a/mm/ksm.c b/mm/ksm.c index e0f85ee99d32..34c1e874f335 100644 --- a/mm/ksm.c +++ b/mm/ksm.c @@ -2458,10 +2458,10 @@ int ksm_madvise(struct vm_area_struct *vma, unsigned long start, if (vma_is_dax(vma)) return 0; - +#ifdef CONFIG_COHERENT_DEVICE if (is_cdm_vma(vma)) return 0; - +#endif #ifdef VM_SAO if (*vm_flags & VM_SAO) return 0; -- GitLab