On Fri, 8 Jan 2016 16:24:02 +0900 Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx> wrote: > 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. > > ... > > --- 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; Kirill's http://ozlabs.org/~akpm/mmots/broken-out/thp-mm-split_huge_page-caller-need-to-lock-page.patch mucks with this code as well. Could you please redo this patch against linux-next? Thanks. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>