[PATCH] net/i40e: Fast release optimizations
Bruce Richardson
bruce.richardson at intel.com
Wed Jun 25 12:47:54 CEST 2025
On Tue, Jun 24, 2025 at 06:12:38AM +0000, Morten Brørup wrote:
> When fast releasing mbufs, the mbufs are not accessed, so do not prefetch
> them.
> This saves a mbuf load operation for each fast released TX mbuf.
>
> When fast release of mbufs is enabled for a TX queue, cache the mbuf
> mempool pointer in the TX queue structure.
> This saves one mbuf load operation for each burst of fast released TX
> mbufs.
>
> The txep->mbuf pointer is not used after the mbuf has been freed, so do
> not reset the pointer.
> This saves a txep store operation for each TX mbuf freed.
>
> Signed-off-by: Morten Brørup <mb at smartsharesystems.com>
> ---
> drivers/net/intel/common/tx.h | 5 +++
> .../i40e/i40e_recycle_mbufs_vec_common.c | 4 +-
> drivers/net/intel/i40e/i40e_rxtx.c | 39 ++++++++++---------
> 3 files changed, 28 insertions(+), 20 deletions(-)
>
Thanks, Morten. This optimization probably applies other places in our
drivers too. I'll look at this patch - and where else it can apply - for
25.11, since we are nearing the end of the 25.07 release cycle.
/Bruce
More information about the dev
mailing list