From: Jakub Kicinski <kuba@kernel.org>
To: Mina Almasry <almasrymina@google.com>
Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
Ayush Sawal <ayush.sawal@chelsio.com>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Paolo Abeni <pabeni@redhat.com>,
Jesper Dangaard Brouer <hawk@kernel.org>,
Ilias Apalodimas <ilias.apalodimas@linaro.org>,
Steffen Klassert <steffen.klassert@secunet.com>,
Herbert Xu <herbert@gondor.apana.org.au>,
David Ahern <dsahern@kernel.org>,
Boris Pismenny <borisp@nvidia.com>,
John Fastabend <john.fastabend@gmail.com>,
Dragos Tatulea <dtatulea@nvidia.com>
Subject: Re: [PATCH net-next v5 2/3] net: mirror skb frag ref/unref helpers
Date: Tue, 9 Apr 2024 18:23:01 -0700 [thread overview]
Message-ID: <20240409182301.227c9ff7@kernel.org> (raw)
In-Reply-To: <20240408153000.2152844-3-almasrymina@google.com>
On Mon, 8 Apr 2024 08:29:57 -0700 Mina Almasry wrote:
> +#ifdef CONFIG_PAGE_POOL
> +static inline bool is_pp_page(struct page *page)
> +{
> + return (page->pp_magic & ~0x3UL) == PP_SIGNATURE;
> +}
> +
> +/* page_pool_unref_page() lives in net/page_pool/helpers.h */
> +static inline void page_pool_ref_page(struct page *page)
> +{
> + atomic_long_inc(&page->pp_ref_count);
> +}
> +
> +static inline bool napi_pp_get_page(struct page *page)
> +{
> + page = compound_head(page);
> +
> + if (!is_pp_page(page))
> + return false;
> +
> + page_pool_ref_page(page);
> + return true;
> +}
> +#endif
> +
> +static inline void skb_page_ref(struct page *page, bool recycle)
> +{
> +#ifdef CONFIG_PAGE_POOL
> + if (recycle && napi_pp_get_page(page))
> + return;
> +#endif
> + get_page(page);
> +}
Shifting of all this code from pp to skbuff catches the eye.
There aren't that many callers to these, can we start a new header?
We can then include page pool headers in the without worry.
I'll apply the other patches, they look independent.
next prev parent reply other threads:[~2024-04-10 1:23 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-08 15:29 [PATCH net-next v5 0/3] Minor cleanups to skb frag ref/unref Mina Almasry
2024-04-08 15:29 ` [PATCH net-next v5 1/3] net: make napi_frag_unref reuse skb_page_unref Mina Almasry
2024-04-09 23:56 ` Jacob Keller
2024-04-08 15:29 ` [PATCH net-next v5 2/3] net: mirror skb frag ref/unref helpers Mina Almasry
2024-04-09 23:58 ` Jacob Keller
2024-04-10 1:23 ` Jakub Kicinski [this message]
2024-04-10 19:09 ` Mina Almasry
2024-04-08 15:29 ` [PATCH net-next v5 3/3] net: remove napi_frag_unref Mina Almasry
2024-04-09 23:58 ` Jacob Keller
2024-04-10 1:50 ` [PATCH net-next v5 0/3] Minor cleanups to skb frag ref/unref patchwork-bot+netdevbpf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240409182301.227c9ff7@kernel.org \
--to=kuba@kernel.org \
--cc=almasrymina@google.com \
--cc=ayush.sawal@chelsio.com \
--cc=borisp@nvidia.com \
--cc=davem@davemloft.net \
--cc=dsahern@kernel.org \
--cc=dtatulea@nvidia.com \
--cc=edumazet@google.com \
--cc=hawk@kernel.org \
--cc=herbert@gondor.apana.org.au \
--cc=ilias.apalodimas@linaro.org \
--cc=john.fastabend@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=steffen.klassert@secunet.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.