On Mon, Jun 7, 2021 at 3:53 PM Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote: > > On Sun, Jun 06, 2021 at 03:50:54AM +0200, Matteo Croce wrote: > > And change all the *_pfmemalloc functions to use page->lru.next like this? > > > > @@ -1668,10 +1668,12 @@ struct address_space *page_mapping(struct page *page); > > static inline bool page_is_pfmemalloc(const struct page *page) > > { > > /* > > - * Page index cannot be this large so this must be > > - * a pfmemalloc page. > > + * This is not a tail page; compound_head of a head page is unused > > + * at return from the page allocator, and will be overwritten > > + * by callers who do not care whether the page came from the > > + * reserves. > > */ > > The comment doesn't make a lot of sense if we're switching to use > lru.next. How about: > > /* > * lru.next has bit 1 set if the page is allocated from the > * pfmemalloc reserves. Callers may simply overwrite it if > * they do not need to preserve that information. > */ Sounds good! -- per aspera ad upstream