Re: [PATCH net-next v1 0/2] introduce skb_frag_fill_page_desc()

From: Jakub Kicinski
Date: Tue May 09 2023 - 21:01:04 EST


On Tue, 9 May 2023 19:43:35 +0800 Yunsheng Lin wrote:
> Most users use __skb_frag_set_page()/skb_frag_off_set()/
> skb_frag_size_set() to fill the page desc for a skb frag.
> It does not make much sense to calling __skb_frag_set_page()
> without calling skb_frag_off_set(), as the offset may depend
> on whether the page is head page or tail page, so add
> skb_frag_fill_page_desc() to fill the page desc for a skb
> frag.
>
> In the future, we can make sure the page in the frag is
> head page of compound page or a base page, if not, we
> may warn about that and convert the tail page to head
> page and update the offset accordingly, if we see a warning
> about that, we also fix the caller to fill the head page
> in the frag. when the fixing is done, we may remove the
> warning and converting.
>
> In this way, we can remove the compound_head() or use
> page_ref_*() like the below case:
> https://elixir.bootlin.com/linux/latest/source/net/core/page_pool.c#L881
> https://elixir.bootlin.com/linux/latest/source/include/linux/skbuff.h#L3383
>
> It may also convert net stack to use the folio easier.
>
> RFC: remove a local variable as pointed out by Simon.

Looks like you posted this 3 times and different people replied with
their acks to different versions :(

Wait awhile, read:
https://www.kernel.org/doc/html/next/process/maintainer-netdev.html
and repost with all the ack/review tags included.