Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1304232

[PATCH v1] mm: soft-offline: exit with failure for non anonymous thp

From Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Newsgroups linux.kernel
Subject [PATCH v1] mm: soft-offline: exit with failure for non anonymous thp
Date 2016-01-08 08:30 +0100
Message-ID <qOzEK-3rg-19@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


Currently memory_failure() doesn't handle non anonymous thp case, because we
can hardly expect the error handling to be successful, and it can just hit
some corner case which results in BUG_ON or something severe like that.
This is also a case for soft offline code, so let's make it in the same way.

Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
---
 mm/memory-failure.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff --git v4.4-rc8/mm/memory-failure.c v4.4-rc8_patched/mm/memory-failure.c
index 750b789..30e9085 100644
--- v4.4-rc8/mm/memory-failure.c
+++ v4.4-rc8_patched/mm/memory-failure.c
@@ -1751,9 +1751,11 @@ int soft_offline_page(struct page *page, int flags)
 		return -EBUSY;
 	}
 	if (!PageHuge(page) && PageTransHuge(hpage)) {
-		if (PageAnon(hpage) && unlikely(split_huge_page(hpage))) {
-			pr_info("soft offline: %#lx: failed to split THP\n",
-				pfn);
+		if (!PageAnon(hpage) || unlikely(split_huge_page(hpage))) {
+			if (!PageAnon(hpage))
+				pr_info("soft offline: %#lx: non anonymous thp\n", pfn);
+			else
+				pr_info("soft offline: %#lx: thp split failed\n", pfn);
 			if (flags & MF_COUNT_INCREASED)
 				put_hwpoison_page(page);
 			return -EBUSY;
-- 
1.7.1

Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread


Thread

[PATCH v1] mm: soft-offline: exit with failure for non anonymous thp Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> - 2016-01-08 08:30 +0100
  Re: [PATCH v1] mm: soft-offline: exit with failure for non  anonymous thp Andrew Morton <akpm@linux-foundation.org> - 2016-01-08 21:40 +0100
    Re: [PATCH v1] mm: soft-offline: exit with failure for non anonymous thp Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> - 2016-01-12 04:20 +0100
      [PATCH v2 1/2] mm: soft-offline: clean up soft_offline_page() Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> - 2016-01-12 04:20 +0100
      [PATCH v2 2/2] mm: soft-offline: exit with failure for non anonymous thp Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> - 2016-01-12 04:20 +0100
        Re: [PATCH v2 2/2] mm: soft-offline: exit with failure for non  anonymous thp Andrew Morton <akpm@linux-foundation.org> - 2016-01-13 01:00 +0100

csiph-web