diff options
author | Andrea Arcangeli <aarcange@redhat.com> | 2012-10-03 19:51:06 -0400 |
---|---|---|
committer | Mel Gorman <mgorman@suse.de> | 2012-12-11 09:42:38 -0500 |
commit | 1ba6e0b50b479cbadb8f05ebde3020da9ac87201 (patch) | |
tree | 7143c7c591ebf16723d2e1d4e898bea75ee6c609 /mm/huge_memory.c | |
parent | 0b9d705297b273657923518dbea2377cd03532ed (diff) |
mm: numa: split_huge_page: transfer the NUMA type from the pmd to the pte
When we split a transparent hugepage, transfer the NUMA type from the
pmd to the pte if needed.
Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Signed-off-by: Mel Gorman <mgorman@suse.de>
Reviewed-by: Rik van Riel <riel@redhat.com>
Diffstat (limited to 'mm/huge_memory.c')
-rw-r--r-- | mm/huge_memory.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/mm/huge_memory.c b/mm/huge_memory.c index 35c66a269bcc..cd24aa562144 100644 --- a/mm/huge_memory.c +++ b/mm/huge_memory.c | |||
@@ -1364,6 +1364,8 @@ static int __split_huge_page_map(struct page *page, | |||
1364 | BUG_ON(page_mapcount(page) != 1); | 1364 | BUG_ON(page_mapcount(page) != 1); |
1365 | if (!pmd_young(*pmd)) | 1365 | if (!pmd_young(*pmd)) |
1366 | entry = pte_mkold(entry); | 1366 | entry = pte_mkold(entry); |
1367 | if (pmd_numa(*pmd)) | ||
1368 | entry = pte_mknuma(entry); | ||
1367 | pte = pte_offset_map(&_pmd, haddr); | 1369 | pte = pte_offset_map(&_pmd, haddr); |
1368 | BUG_ON(!pte_none(*pte)); | 1370 | BUG_ON(!pte_none(*pte)); |
1369 | set_pte_at(mm, haddr, pte, entry); | 1371 | set_pte_at(mm, haddr, pte, entry); |