> 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]>

