diff --git a/mm/vmscan.c b/mm/vmscan.c index e366ac953d3822adc319e7c2361af6389ab4fb63..8e6dfc5386c9a47e8ee7495acca8664fbc71de85 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -1890,7 +1890,12 @@ static unsigned noinline_for_stack move_pages_to_lru(struct lruvec *lruvec, continue; } - lruvec = mem_cgroup_page_lruvec(page, pgdat); + /* + * All pages were isolated from the same lruvec (and isolation + * inhibits memcg migration). + */ + VM_BUG_ON_PAGE(mem_cgroup_page_lruvec(page, page_pgdat(page)) + != lruvec, page); lru = page_lru(page); nr_pages = thp_nr_pages(page);