mm: numa: do not automatically migrate KSM pages
KSM pages can be shared between tasks that are not necessarily related to each other from a NUMA perspective. This patch causes those pages to be ignored by automatic NUMA balancing so they do not migrate and do not cause unrelated tasks to be grouped together. Signed-off-by: Mel Gorman <mgorman@suse.de> Reviewed-by: Rik van Riel <riel@redhat.com> Cc: Alex Thorlton <athorlton@sgi.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
af1839d722
Коммит
64a9a34e22
|
@ -23,6 +23,7 @@
|
|||
#include <linux/mmu_notifier.h>
|
||||
#include <linux/migrate.h>
|
||||
#include <linux/perf_event.h>
|
||||
#include <linux/ksm.h>
|
||||
#include <asm/uaccess.h>
|
||||
#include <asm/pgtable.h>
|
||||
#include <asm/cacheflush.h>
|
||||
|
@ -63,7 +64,7 @@ static unsigned long change_pte_range(struct vm_area_struct *vma, pmd_t *pmd,
|
|||
|
||||
ptent = *pte;
|
||||
page = vm_normal_page(vma, addr, oldpte);
|
||||
if (page) {
|
||||
if (page && !PageKsm(page)) {
|
||||
if (!pte_numa(oldpte)) {
|
||||
ptent = pte_mknuma(ptent);
|
||||
set_pte_at(mm, addr, pte, ptent);
|
||||
|
|
Загрузка…
Ссылка в новой задаче