[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aa334df4-e362-a6d6-87bf-fd6be16023ec@redhat.com>
Date: Fri, 6 Jan 2023 14:59:30 +0100
From: Jesper Dangaard Brouer <jbrouer@...hat.com>
To: "Matthew Wilcox (Oracle)" <willy@...radead.org>,
Jesper Dangaard Brouer <hawk@...nel.org>,
Ilias Apalodimas <ilias.apalodimas@...aro.org>
Cc: brouer@...hat.com, netdev@...r.kernel.org, linux-mm@...ck.org,
Shakeel Butt <shakeelb@...gle.com>
Subject: Re: [PATCH v2 05/24] page_pool: Start using netmem in allocation
path.
On 05/01/2023 22.46, Matthew Wilcox (Oracle) wrote:
> Convert __page_pool_alloc_page_order() and __page_pool_alloc_pages_slow()
> to use netmem internally. This removes a couple of calls
> to compound_head() that are hidden inside put_page().
> Convert trace_page_pool_state_hold(), page_pool_dma_map() and
> page_pool_set_pp_info() to take a netmem argument.
>
> Saves 83 bytes of text in __page_pool_alloc_page_order() and 98 in
> __page_pool_alloc_pages_slow() for a total of 181 bytes.
>
> Signed-off-by: Matthew Wilcox (Oracle) <willy@...radead.org>
> ---
> include/trace/events/page_pool.h | 14 +++++------
> net/core/page_pool.c | 42 +++++++++++++++++---------------
> 2 files changed, 29 insertions(+), 27 deletions(-)
Acked-by: Jesper Dangaard Brouer <brouer@...hat.com>
Question below.
> diff --git a/net/core/page_pool.c b/net/core/page_pool.c
> index 437241aba5a7..4e985502c569 100644
> --- a/net/core/page_pool.c
> +++ b/net/core/page_pool.c
[...]
> @@ -421,7 +422,8 @@ static struct page *__page_pool_alloc_pages_slow(struct page_pool *pool,
> page = NULL;
> }
>
> - /* When page just alloc'ed is should/must have refcnt 1. */
> + /* When page just allocated it should have refcnt 1 (but may have
> + * speculative references) */
> return page;
What does it mean page may have speculative references ?
And do I/we need to worry about that for page_pool?
--Jesper
Powered by blists - more mailing lists