Messages in this thread Patch in this message | | | From | Lin Feng <> | Subject | [PATCH 1/2] mm: vmemmap: x86: add vmemmap_verify check for hot-add node case | Date | Mon, 8 Apr 2013 17:56:39 +0800 |
| |
In hot add node(memory) case, vmemmap pages are always allocated from other node, but the current logic just skip vmemmap_verify check. So we should also issue "potential offnode page_structs" warning messages if we are the case.
Cc: Christoph Lameter <cl@linux.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@redhat.com> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Yinghai Lu <yinghai@kernel.org> Cc: Andrew Morton <akpm@linux-foundation.org> Reported-by: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com> Signed-off-by: Lin Feng <linfeng@cn.fujitsu.com> --- arch/x86/mm/init_64.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/arch/x86/mm/init_64.c b/arch/x86/mm/init_64.c index 474e28f..e2a7277 100644 --- a/arch/x86/mm/init_64.c +++ b/arch/x86/mm/init_64.c @@ -1318,6 +1318,8 @@ vmemmap_populate(struct page *start_page, unsigned long size, int node) if (!p) return -ENOMEM; + vmemmap_verify((pte_t *)p, node, addr, addr + PAGE_SIZE); + addr_end = addr + PAGE_SIZE; p_end = p + PAGE_SIZE; } else { @@ -1347,8 +1349,8 @@ vmemmap_populate(struct page *start_page, unsigned long size, int node) addr_end = addr + PMD_SIZE; p_end = p + PMD_SIZE; - } else - vmemmap_verify((pte_t *)pmd, node, addr, next); + } + vmemmap_verify((pte_t *)pmd, node, addr, next); } } -- 1.8.0.1
| |