On 3/19/21 3:47 PM, Lorenzo Bianconi wrote:
> diff --git a/include/net/xdp.h b/include/net/xdp.h
> index 19cd6642e087..e47d9e8da547 100644
> --- a/include/net/xdp.h
> +++ b/include/net/xdp.h
> @@ -75,6 +75,10 @@ struct xdp_buff {
> struct xdp_txq_info *txq;
> u32 frame_sz:31; /* frame size to deduce data_hard_end/reserved
> tailroom*/
> u32 mb:1; /* xdp non-linear buffer */
> + u32 frame_length; /* Total frame length across all buffers. Only needs
> + * to be updated by helper functions, as it will be
> + * initialized at XDP program start.
> + */
> };
>
> static __always_inline void
If you do another version of this set ...
I think you only need 17-bits for the frame length (size is always <=
128kB). It would be helpful for extensions to xdp if you annotated how
many bits are really needed here.