[RFC v9 PATCH 20/21] memory-hotplug: clear hwpoisoned flag when onlining pages
wency at cn.fujitsu.com
wency at cn.fujitsu.com
Wed Sep 5 19:25:54 EST 2012
From: Wen Congyang <wency at cn.fujitsu.com>
hwpoisoned may set when we offline a page by the sysfs interface
/sys/devices/system/memory/soft_offline_page or
/sys/devices/system/memory/hard_offline_page. If we don't clear
this flag when onlining pages, this page can't be freed, and will
not in free list. So we can't offline these pages again. So we
should clear this flag when onlining pages.
CC: David Rientjes <rientjes at google.com>
CC: Jiang Liu <liuj97 at gmail.com>
CC: Len Brown <len.brown at intel.com>
CC: Benjamin Herrenschmidt <benh at kernel.crashing.org>
CC: Paul Mackerras <paulus at samba.org>
CC: Christoph Lameter <cl at linux.com>
Cc: Minchan Kim <minchan.kim at gmail.com>
CC: Andrew Morton <akpm at linux-foundation.org>
CC: KOSAKI Motohiro <kosaki.motohiro at jp.fujitsu.com>
CC: Yasuaki Ishimatsu <isimatu.yasuaki at jp.fujitsu.com>
Signed-off-by: Wen Congyang <wency at cn.fujitsu.com>
---
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 270c249..140c080 100644
--- a/mm/memory_hotplug.c
+++ b/mm/memory_hotplug.c
@@ -661,6 +661,11 @@ EXPORT_SYMBOL_GPL(__online_page_increment_counters);
void __online_page_free(struct page *page)
{
+#ifdef CONFIG_MEMORY_FAILURE
+ /* The page may be marked HWPoisoned by soft/hard offline page */
+ ClearPageHWPoison(page);
+#endif
+
ClearPageReserved(page);
init_page_count(page);
__free_page(page);
--
1.7.1
More information about the Linuxppc-dev
mailing list