Re: [PATCH net-next v7 1/5] mm: add a signature in struct page

From: Matthew Wilcox
Date: Mon Jun 07 2021 - 09:53:07 EST


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.
*/