From: Eric Dumazet <eric.duma...@gmail.com>
Date: Mon, 26 Nov 2018 15:05:02 -0800

> One thing that could be done without too much impact is to provide a cbext[]
> only for TCP packets in write/rtx queue, that is not in sk_buff but
> on the struct sk_buff_fclones
> 
> This extra space would not be 0-initialized at alloc_skb()
> and would not be copied at skb_clone()
> 
> I mentioned this idea a while back already.
> 
> 
> diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
> index 
> 73902acf2b71c8800d81b744a936a7420f33b459..c4bfc2fd98eb9723c0219d5cd8bf5b28afaf5398
>  100644
> --- a/include/linux/skbuff.h
> +++ b/include/linux/skbuff.h
> @@ -1018,6 +1018,8 @@ struct sk_buff_fclones {
>         struct sk_buff  skb2;
>  
>         refcount_t      fclone_ref;
> +
> +       char            cbext[128] __aligned(8);
>  };

So, potentially at least, MP-TCP could use this.

The down side is that it doesn't allow for the br_netfilter, skb->sp,
etc. consoldation down to one test.

Reply via email to