On Thu, Aug 31, 2023 at 04:46:50PM +0100, Ryan Roberts wrote: > On 25/08/2023 14:59, Matthew Wilcox (Oracle) wrote: > > The few folios which can't be moved to the LRU list (because their > > refcount dropped to zero) used to be returned to the caller to dispose > > of. Make this simpler to call by freeing the folios directly through > > free_unref_folios(). > > > > Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> > > --- > > mm/vmscan.c | 31 ++++++++++++------------------- > > 1 file changed, 12 insertions(+), 19 deletions(-) > > > > diff --git a/mm/vmscan.c b/mm/vmscan.c > > index 965c429847fd..d5080510608e 100644 > > --- a/mm/vmscan.c > > +++ b/mm/vmscan.c > > @@ -2489,8 +2489,9 @@ static unsigned int move_folios_to_lru(struct lruvec *lruvec, > > struct list_head *list) > > The comment for this function is now stale: > > /* > * move_folios_to_lru() moves folios from private @list to appropriate LRU list. > * On return, @list is reused as a list of folios to be freed by the caller. > * > * Returns the number of pages moved to the given lruvec. > */ > > I think the "On return" bit is no longer true. It's still true, but misleading ;-) I'll amend it to - * On return, @list is reused as a list of folios to be freed by the caller. + * On return, @list is empty.