> From: Bruce Richardson [mailto:[email protected]]
> Sent: Tuesday, 2 June 2026 17.45
> 
> When the fast-free hint is provided to the driver we know that the
> mbufs
> have refcnt of 1 and are from the same mempool. Therefore, we can
> optimize a bit for this case even in the scalar path of our drivers.
> 
> ---
> v4:
> * add precursor patch to adjust mbuf pointers so that the DD bit
>   is written to a descriptor with a valid mbuf pointer associated
>   with it.
> 
> v3:
> * used mbuf_raw_free_bulk rather than mempool function directly
> * check for fast_free via mp pointer rather than flags
> * remove unnecessary prefetches
> 
> V2: Fix issues with original submission:
> * missed check for NULL mbufs
> * fixed issue with freeing directly from sw_ring in scalar path which
>   doesn't work as thats not a flag array of pointers
> * fixed missing null assignment in case of large segments for TSO
> 
> 
> Bruce Richardson (2):
>   net/intel: write mbuf for last Tx desc of segment
>   net/intel: optimize for fast-free hint
> 
>  drivers/net/intel/common/tx.h        | 21 ++++--
>  drivers/net/intel/common/tx_scalar.h | 98 +++++++++++++++++++++-------
>  2 files changed, 90 insertions(+), 29 deletions(-)
> 
> --
> 2.53.0

Good catch by Ciara, and good solution to it.
Series-Acked-by: Morten Brørup <[email protected]>

Reply via email to