[PATCHv1] mm: always initialize pages as reserved to fix memory hotplug

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Commit 92923ca3aacef63c92dc297a75ad0c6dfe4eab37 (mm: meminit: only set
page reserved in the memblock region) breaks memory hotplug because pages
within newly added sections are not marked as reserved as required by
the memory hotplug driver.  If pages within an offline section are not
reserved, the secton cannot be onlined.

Re-add the SetPageReserved() call.

Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>
Cc: Robin Holt <holt@xxxxxxx>
Cc: Nathan Zimmer <nzimmer@xxxxxxx>
Cc: Mel Gorman <mgorman@xxxxxxx>
---
 mm/page_alloc.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index ef19f22..89492f6 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -842,6 +842,7 @@ static void __meminit __init_single_page(struct page *page, unsigned long pfn,
 	init_page_count(page);
 	page_mapcount_reset(page);
 	page_cpupid_reset_last(page);
+	SetPageReserved(page);
 
 	INIT_LIST_HEAD(&page->lru);
 #ifdef WANT_PAGE_VIRTUAL
-- 
2.1.4

--
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>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]