summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWanpeng Li <wanpeng.li@hotmail.com>2015-09-08 22:03:18 (GMT)
committerLinus Torvalds <torvalds@linux-foundation.org>2015-09-08 22:35:28 (GMT)
commitbe91748fa6ca6909853c3dc630d65e45084962d7 (patch)
tree478a90a3b91ecb5902777a75362521506b7f7eb2
parent94bf4ec84a84d3ab2513b4e681fd3d083328d76d (diff)
downloadlinux-be91748fa6ca6909853c3dc630d65e45084962d7.tar.xz
mm/hwpoison: fix refcount of THP head page in no-injection case
Hwpoison injection takes a refcount of target page and another refcount of head page of THP if the target page is the tail page of a THP. However, current code doesn't release the refcount of head page if the THP is not supported to be injected wrt hwpoison filter. Fix it by reducing the refcount of head page if the target page is the tail page of a THP and it is not supported to be injected. Signed-off-by: Wanpeng Li <wanpeng.li@hotmail.com> Acked-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--mm/hwpoison-inject.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/hwpoison-inject.c b/mm/hwpoison-inject.c
index bf73ac1..aeba0ed 100644
--- a/mm/hwpoison-inject.c
+++ b/mm/hwpoison-inject.c
@@ -58,7 +58,7 @@ inject:
pr_info("Injecting memory failure at pfn %#lx\n", pfn);
return memory_failure(pfn, 18, MF_COUNT_INCREASED);
put_out:
- put_page(p);
+ put_hwpoison_page(p);
return 0;
}