On Sat, Jul 04, 2020 at 07:34:59PM +0800, Alex Shi wrote: > That's a great idea! Guess what the new struct we need would be like this? > I like to try this. :) > > > diff --git a/include/linux/pagevec.h b/include/linux/pagevec.h > index 081d934eda64..d62778c8c184 100644 > --- a/include/linux/pagevec.h > +++ b/include/linux/pagevec.h > @@ -20,7 +20,7 @@ > struct pagevec { > unsigned char nr; > bool percpu_pvec_drained; > - struct page *pages[PAGEVEC_SIZE]; > + struct list_head veclist; > }; pagevecs are used not just for LRU. If you want to use a list_head for LRU then define a new structure.