On Mon, Dec 16, 2019 at 05:26:18PM +0800, Alex Shi wrote: > -static void lock_page_lru(struct page *page, int *isolated) > +static struct lruvec *lock_page_lru(struct page *page, int *isolated) > { > - pg_data_t *pgdat = page_pgdat(page); > + struct lruvec *lruvec = lock_page_lruvec_irq(page); > > - spin_lock_irq(&pgdat->lru_lock); > if (PageLRU(page)) { > - struct lruvec *lruvec; > > - lruvec = mem_cgroup_page_lruvec(page, pgdat); > ClearPageLRU(page); > del_page_from_lru_list(page, lruvec, page_lru(page)); > *isolated = 1; > } else > *isolated = 0; > + > + return lruvec; > } You still didn't fix this function. Go back and look at my comment from the last time you sent this patch set.