mm: actually clear pmd_numa before invalidating
Commit 67f87463d3
("mm: clear pmd_numa before invalidating") cleared
the NUMA bit in a copy of the PMD entry, but then wrote back the
original
Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
Acked-by: Mel Gorman <mgorman@suse.de>
Reviewed-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
0cfb8f0c3e
commit
ce8369bcbe
@@ -195,7 +195,7 @@ void pmdp_invalidate(struct vm_area_struct *vma, unsigned long address,
|
|||||||
pmd_t entry = *pmdp;
|
pmd_t entry = *pmdp;
|
||||||
if (pmd_numa(entry))
|
if (pmd_numa(entry))
|
||||||
entry = pmd_mknonnuma(entry);
|
entry = pmd_mknonnuma(entry);
|
||||||
set_pmd_at(vma->vm_mm, address, pmdp, pmd_mknotpresent(*pmdp));
|
set_pmd_at(vma->vm_mm, address, pmdp, pmd_mknotpresent(entry));
|
||||||
flush_tlb_range(vma, address, address + HPAGE_PMD_SIZE);
|
flush_tlb_range(vma, address, address + HPAGE_PMD_SIZE);
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_TRANSPARENT_HUGEPAGE */
|
#endif /* CONFIG_TRANSPARENT_HUGEPAGE */
|
||||||
|
Reference in New Issue
Block a user