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

