On 12/08/2018 01:57 AM, Florian Westphal wrote:
Jesper Dangaard Brouer [off-list ref] wrote:
quoted
From: Ilias Apalodimas <ilias.apalodimas@linaro.org>
This patch is changing struct sk_buff, and is thus per-definition
controversial.
Place a new member 'mem_info' of type struct xdp_mem_info, just after
members (flags) head_frag and pfmemalloc, And not in between
headers_start/end to ensure skb_copy() and pskb_copy() work as-is.
Copying mem_info during skb_clone() is required. This makes sure that
pages are correctly freed or recycled during the altered
skb_free_head() invocation.
I read this to mean that this 'info' isn't accessed/needed until skb
is freed. Any reason its not added at the end?
This would avoid moving other fields that are probably accessed
more frequently during processing.
But I do not get why the patch is needed.
Adding extra cost for each skb destruction is costly.
I though XDP was all about _not_ having skbs.
Please let's do not slow down the non XDP stack only to make XDP more appealing.