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

From: Matteo Croce
Date: Thu May 13 2021 - 21:41:10 EST


On Fri, May 14, 2021 at 3:01 AM Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote:
>
> On Thu, May 13, 2021 at 06:58:42PM +0200, Matteo Croce wrote:
> > struct { /* page_pool used by netstack */
> > + /**
> > + * @pp_magic: magic value to avoid recycling non
> > + * page_pool allocated pages.
> > + * It aliases with page->lru.next
>
> I'm not really keen on documenting what aliases with what.
> pp_magic also aliases with compound_head, 'next' (for slab),
> and dev_pagemap. This is an O(n^2) documentation problem ...
>

Eric asked to document what page->signature aliases, so I did it in
the commit message and in a comment.
I can drop the code comment and leave it just the commit message.

> I feel like I want to document the pfmemalloc bit in mm_types.h,
> but I don't have a concrete suggestion yet.
>
> > +++ b/include/net/page_pool.h
> > @@ -63,6 +63,8 @@
> > */
> > #define PP_ALLOC_CACHE_SIZE 128
> > #define PP_ALLOC_CACHE_REFILL 64
> > +#define PP_SIGNATURE (POISON_POINTER_DELTA + 0x40)
>
> I wonder if this wouldn't be better in linux/poison.h?
>

I was thinking the same, I'll do it in the v6.

Regards,
--
per aspera ad upstream