summaryrefslogtreecommitdiffstats
path: root/mm/memory.c
diff options
context:
space:
mode:
Diffstat (limited to 'mm/memory.c')
-rw-r--r--mm/memory.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/mm/memory.c b/mm/memory.c
index e11ca9dd823f..eb40f32295d2 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -69,6 +69,7 @@
69#include <linux/userfaultfd_k.h> 69#include <linux/userfaultfd_k.h>
70#include <linux/dax.h> 70#include <linux/dax.h>
71#include <linux/oom.h> 71#include <linux/oom.h>
72#include <linux/numa.h>
72 73
73#include <asm/io.h> 74#include <asm/io.h>
74#include <asm/mmu_context.h> 75#include <asm/mmu_context.h>
@@ -3586,7 +3587,7 @@ static vm_fault_t do_numa_page(struct vm_fault *vmf)
3586{ 3587{
3587 struct vm_area_struct *vma = vmf->vma; 3588 struct vm_area_struct *vma = vmf->vma;
3588 struct page *page = NULL; 3589 struct page *page = NULL;
3589 int page_nid = -1; 3590 int page_nid = NUMA_NO_NODE;
3590 int last_cpupid; 3591 int last_cpupid;
3591 int target_nid; 3592 int target_nid;
3592 bool migrated = false; 3593 bool migrated = false;
@@ -3653,7 +3654,7 @@ static vm_fault_t do_numa_page(struct vm_fault *vmf)
3653 target_nid = numa_migrate_prep(page, vma, vmf->address, page_nid, 3654 target_nid = numa_migrate_prep(page, vma, vmf->address, page_nid,
3654 &flags); 3655 &flags);
3655 pte_unmap_unlock(vmf->pte, vmf->ptl); 3656 pte_unmap_unlock(vmf->pte, vmf->ptl);
3656 if (target_nid == -1) { 3657 if (target_nid == NUMA_NO_NODE) {
3657 put_page(page); 3658 put_page(page);
3658 goto out; 3659 goto out;
3659 } 3660 }
@@ -3667,7 +3668,7 @@ static vm_fault_t do_numa_page(struct vm_fault *vmf)
3667 flags |= TNF_MIGRATE_FAIL; 3668 flags |= TNF_MIGRATE_FAIL;
3668 3669
3669out: 3670out:
3670 if (page_nid != -1) 3671 if (page_nid != NUMA_NO_NODE)
3671 task_numa_fault(last_cpupid, page_nid, 1, flags); 3672 task_numa_fault(last_cpupid, page_nid, 1, flags);
3672 return 0; 3673 return 0;
3673} 3674}