From: Naoya Horiguchi Date: Wed, 8 Sep 2010 01:19:40 +0000 (+0900) Subject: HWPOISON, hugetlb: fix unpoison for hugepage X-Git-Tag: v2.6.37-rc1~109^2^2~6 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6a90181c7b0558b86179c1f5bcf3ab11f9d1bd30;p=profile%2Fivi%2Fkernel-adaptation-intel-automotive.git HWPOISON, hugetlb: fix unpoison for hugepage Currently unpoisoning hugepages doesn't work correctly because clearing PG_HWPoison is done outside if (TestClearPageHWPoison). This patch fixes it. Signed-off-by: Naoya Horiguchi Signed-off-by: Jun'ichi Nomura Acked-by: Mel Gorman Signed-off-by: Andi Kleen --- diff --git a/mm/memory-failure.c b/mm/memory-failure.c index 74eb425..14589a2 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c @@ -1202,9 +1202,9 @@ int unpoison_memory(unsigned long pfn) pr_debug("MCE: Software-unpoisoned page %#lx\n", pfn); atomic_long_sub(nr_pages, &mce_bad_pages); freeit = 1; + if (PageHuge(page)) + clear_page_hwpoison_huge_page(page); } - if (PageHuge(p)) - clear_page_hwpoison_huge_page(page); unlock_page(page); put_page(page);