On Thu, Apr 24, 2014 at 11:08 AM, Hugh Dickins <hughd@xxxxxxxxxx> wrote: > On Tue, 8 Apr 2014, Bob Liu wrote: >> On Sat, Apr 5, 2014 at 5:04 PM, Hugh Dickins <hughd@xxxxxxxxxx> wrote: >> > On Mon, 31 Mar 2014, Bob Liu wrote: >> > >> >> VM_BUG_ON_PAGE(PageActive(page) && PageUnevictable(page), page) in >> >> lru_cache_add() was triggered during migrate_misplaced_transhuge_page. >> >>... >> >> From vmscan.c: >> >> * Reasons page might not be evictable: >> >> * (1) page's mapping marked unevictable >> >> * (2) page is part of an mlocked VMA >> >> >> >> But page_add_new_anon_rmap() only checks reason (2), we may hit this >> >> VM_BUG_ON_PAGE() if PageUnevictable(old_page) was originally set by reason (1). >> > >> > But (1) always reports evictable on an anon page, doesn't it? >> > >> >> >> >> Reported-by: Sasha Levin <sasha.levin@xxxxxxxxxx> >> >> Signed-off-by: Bob Liu <bob.liu@xxxxxxxxxx> >> > >> > I can't quite assert NAK, but I suspect this is not the proper fix. > ... >> > >> > (Yet now I'm wavering again: if down_write mmap_sem is needed to >> > munlock() the vma, and migrate_misplaced_transhuge_page() is only >> > migrating a singly-mapped THP under down_read mmap_sem, how could >> > VM_LOCKED have changed during the migration? I've lost sight of >> >> I think you are right, I'll do more investigation about why this BUG >> was triggered. > > Andrew, if Bob agrees, please drop > > mm-rmap-dont-try-to-add-an-unevictable-page-to-lru-list.patch > I agree! > from mmotm now. We have not heard any such report yet on 3.15-rc, Yes, I can't reproduce it on 3.15-rc1 neither. > and neither Bob nor I have yet come up with a convincing explanation > for how it came about. It's tempting to suppose it was a side-effect > of something temporarily wrong on a 3.14-next, and now okay; but we'll > learn more quickly whether that's so if mmotm stops working around it. > Agree! Thank you for taking look at this issue. -- Regards, --Bob -- 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>