On Tue, 2 Feb 2016 19:21:01 +0300 "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx> wrote: > Calling isolate_lru_page() is wrong and shouldn't happen, but it not > nessesary fatal: the page just will not be isolated if it's not on LRU. > > Let's downgrade the VM_BUG_ON_PAGE() to WARN_RATELIMIT(). > > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> > --- > mm/vmscan.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/vmscan.c b/mm/vmscan.c > index eb3dd37ccd7c..71b1c29948db 100644 > --- a/mm/vmscan.c > +++ b/mm/vmscan.c > @@ -1443,7 +1443,7 @@ int isolate_lru_page(struct page *page) > int ret = -EBUSY; > > VM_BUG_ON_PAGE(!page_count(page), page); > - VM_BUG_ON_PAGE(PageTail(page), page); > + WARN_RATELIMIT(PageTail(page), "trying to isolate tail page"); > > if (PageLRU(page)) { > struct zone *zone = page_zone(page); Confused. I thought mm-fix-bogus-vm_bug_on_page-in-isolate_lru_page.patch: --- a/mm/vmscan.c~mm-fix-bogus-vm_bug_on_page-in-isolate_lru_page +++ a/mm/vmscan.c @@ -1443,7 +1443,7 @@ int isolate_lru_page(struct page *page) int ret = -EBUSY; VM_BUG_ON_PAGE(!page_count(page), page); - VM_BUG_ON_PAGE(PageTail(page), page); + VM_BUG_ON_PAGE(PageLRU(page) && PageTail(page), page); if (PageLRU(page)) { struct zone *zone = page_zone(page); was better. We *know* that we sometimes encounter LRU pages here and we know that we handle them correctly. So why scare users by blurting out a warning about something for which we won't be taking any action? -- 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>