archive mirror
 help / color / mirror / Atom feed
Subject: + mmhwpoison-return-0-if-the-page-is-already-poisoned-in-soft-offline.patch added to -mm tree
Date: Tue, 22 Sep 2020 10:00:39 -0700	[thread overview]
Message-ID: <> (raw)

The patch titled
     Subject: mm,hwpoison: return 0 if the page is already poisoned in soft-offline
has been added to the -mm tree.  Its filename is

This patch should soon appear at
and later at

Before you just go and hit "reply", please:
   a) Consider who else should be cc'ed
   b) Prefer to cc a suitable mailing list as well
   c) Ideally: find the original patch on the mailing list and do a
      reply-to-all to that, adding suitable additional cc's

*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***

The -mm tree is included into linux-next and is updated
there every 3-4 working days

From: Oscar Salvador <>
Subject: mm,hwpoison: return 0 if the page is already poisoned in soft-offline

Currently, there is an inconsistency when calling soft-offline from
different paths on a page that is already poisoned.

1) madvise:

        madvise_inject_error skips any poisoned page and continues
        the loop.
        If that was the only page to madvise, it returns 0.

2) /sys/devices/system/memory/:

        When calling soft_offline_page_store()->soft_offline_page(),
        we return -EBUSY in case the page is already poisoned.
        This is inconsistent with a) the above example and b)
        memory_failure, where we return 0 if the page was poisoned.

Fix this by dropping the PageHWPoison() check in madvise_inject_error, and
let soft_offline_page return 0 if it finds the page already poisoned.

Please, note that this represents a user-api change, since now the return
error when calling soft_offline_page_store()->soft_offline_page() will be

Signed-off-by: Oscar Salvador <>
Cc: "Aneesh Kumar K.V" <>
Cc: Aneesh Kumar K.V <>
Cc: Aristeu Rozanski <>
Cc: Dave Hansen <>
Cc: David Hildenbrand <>
Cc: Dmitry Yakunin <>
Cc: Michal Hocko <>
Cc: Mike Kravetz <>
Cc: Naoya Horiguchi <>
Cc: Oscar Salvador <>
Cc: Qian Cai <>
Cc: Tony Luck <>
Signed-off-by: Andrew Morton <>

 mm/madvise.c        |    5 -----
 mm/memory-failure.c |    4 ++--
 2 files changed, 2 insertions(+), 7 deletions(-)

--- a/mm/madvise.c~mmhwpoison-return-0-if-the-page-is-already-poisoned-in-soft-offline
+++ a/mm/madvise.c
@@ -896,11 +896,6 @@ static int madvise_inject_error(int beha
 		size = page_size(compound_head(page));
-		if (PageHWPoison(page)) {
-			put_page(page);
-			continue;
-		}
 		if (behavior == MADV_SOFT_OFFLINE) {
 			pr_info("Soft offlining pfn %#lx at process virtual address %#lx\n",
 				 pfn, start);
--- a/mm/memory-failure.c~mmhwpoison-return-0-if-the-page-is-already-poisoned-in-soft-offline
+++ a/mm/memory-failure.c
@@ -1802,7 +1802,7 @@ static int __soft_offline_page(struct pa
 		pr_info("soft offline: %#lx page already poisoned\n", pfn);
-		return -EBUSY;
+		return 0;
 	if (!PageHuge(page))
@@ -1906,7 +1906,7 @@ int soft_offline_page(unsigned long pfn,
 		pr_info("soft offline: %#lx page already poisoned\n", pfn);
 		if (flags & MF_COUNT_INCREASED)
-		return -EBUSY;
+		return 0;

Patches currently in -mm which might be from are


             reply	other threads:[~2020-09-22 17:00 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-22 17:00 akpm [this message]
  -- strict thread matches above, loose matches on Subject: below --
2020-08-07  1:07 akpm
2020-07-24  4:14 incoming Andrew Morton
2020-07-31 20:06 ` + mmhwpoison-return-0-if-the-page-is-already-poisoned-in-soft-offline.patch added to -mm tree Andrew Morton
2020-07-03 22:14 incoming Andrew Morton
2020-07-16 21:46 ` + mmhwpoison-return-0-if-the-page-is-already-poisoned-in-soft-offline.patch added to -mm tree Andrew Morton
2020-06-24 19:19 akpm

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
    --subject='Re: + mmhwpoison-return-0-if-the-page-is-already-poisoned-in-soft-offline.patch added to -mm tree' \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
on how to clone and mirror all data and code used for this inbox