Pages marked as LOCAL_NODE_DATA are skipped when we do memory offline. So we have to skip them again when we do memory online. Signed-off-by: Tang Chen <tangchen@xxxxxxxxxxxxxx> --- mm/memory_hotplug.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c index c2017eb..3561048 100644 --- a/mm/memory_hotplug.c +++ b/mm/memory_hotplug.c @@ -843,6 +843,11 @@ static int online_pages_range(unsigned long start_pfn, unsigned long nr_pages, if (PageReserved(pfn_to_page(start_pfn))) for (i = 0; i < nr_pages; i++) { page = pfn_to_page(start_pfn + i); + + /* Skip pages storing local node kernel data. */ + if (is_local_node_data(page)) + continue; + (*online_page_callback)(page); onlined_pages++; } -- 1.7.1 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>