Message ID | 153154379606.34503.17311881160518829077.stgit@dwillia2-desk3.amr.corp.intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Jul 13, 2018 at 09:49:56PM -0700, Dan Williams wrote: > Given that dax / device-mapped pages are never subject to page > allocations remove them from consideration by the soft-offline > mechanism. > > Reported-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> > Signed-off-by: Dan Williams <dan.j.williams@intel.com> > --- > mm/memory-failure.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/mm/memory-failure.c b/mm/memory-failure.c > index 9d142b9b86dc..988f977db3d2 100644 > --- a/mm/memory-failure.c > +++ b/mm/memory-failure.c > @@ -1751,6 +1751,14 @@ int soft_offline_page(struct page *page, int flags) > int ret; > unsigned long pfn = page_to_pfn(page); > > + if (is_zone_device_page(page)) { > + pr_debug_ratelimited("soft_offline: %#lx page is device page\n", > + pfn); > + if (flags & MF_COUNT_INCREASED) > + put_page(page); put_hwpoison_page(), which is just an alias of put_page(), is better for consistency. With this adjustment, feel free to add my ack. Acked-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> Thanks, Naoya Horiguchi > + return -EIO; > + } > + > if (PageHWPoison(page)) { > pr_info("soft offline: %#lx page already poisoned\n", pfn); > if (flags & MF_COUNT_INCREASED) > >
diff --git a/mm/memory-failure.c b/mm/memory-failure.c index 9d142b9b86dc..988f977db3d2 100644 --- a/mm/memory-failure.c +++ b/mm/memory-failure.c @@ -1751,6 +1751,14 @@ int soft_offline_page(struct page *page, int flags) int ret; unsigned long pfn = page_to_pfn(page); + if (is_zone_device_page(page)) { + pr_debug_ratelimited("soft_offline: %#lx page is device page\n", + pfn); + if (flags & MF_COUNT_INCREASED) + put_page(page); + return -EIO; + } + if (PageHWPoison(page)) { pr_info("soft offline: %#lx page already poisoned\n", pfn); if (flags & MF_COUNT_INCREASED)
Given that dax / device-mapped pages are never subject to page allocations remove them from consideration by the soft-offline mechanism. Reported-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com> --- mm/memory-failure.c | 8 ++++++++ 1 file changed, 8 insertions(+)