From: Bruce Richardson <bruce.richardson@intel.com>
To: "Morten Brørup" <mb@smartsharesystems.com>
Cc: <dev@dpdk.org>, <anatoly.burakov@intel.com>
Subject: Re: [PATCH] net/intel: allow fast-free to empty cache
Date: Mon, 10 Mar 2025 15:53:25 +0000 [thread overview]
Message-ID: <Z88K9QPJD5chiPya@bricha3-mobl1.ger.corp.intel.com> (raw)
In-Reply-To: <98CBD80474FA8B44BF855DF32C47DC35E9FADD@smartserver.smartshare.dk>
On Mon, Mar 10, 2025 at 04:34:23PM +0100, Morten Brørup wrote:
> > From: Bruce Richardson [mailto:bruce.richardson@intel.com]
> > Sent: Monday, 10 March 2025 16.27
> >
> > On Mon, Mar 10, 2025 at 04:18:35PM +0100, Morten Brørup wrote:
> > > > From: Bruce Richardson [mailto:bruce.richardson@intel.com]
> > > > Sent: Monday, 10 March 2025 14.26
> > > >
> > > > When freeing transmitted mbufs, there is no reason to send the
> > freed
> > > > mbufs directly to the ring if the cache is empty - only if it is
> > zero
> > > > size (in which case the cache pointer is NULL). Therefore, remove
> > the
> > > > empty check and only check for a null cache pointer.
> > > >
> > > > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> > > > ---
> > > > drivers/net/intel/common/tx.h | 2 +-
> > > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > > >
> > > > diff --git a/drivers/net/intel/common/tx.h
> > > > b/drivers/net/intel/common/tx.h
> > > > index d9cf4474fc..d361fe64ab 100644
> > > > --- a/drivers/net/intel/common/tx.h
> > > > +++ b/drivers/net/intel/common/tx.h
> > > > @@ -143,7 +143,7 @@ ci_tx_free_bufs_vec(struct ci_tx_queue *txq,
> > > > ci_desc_done_fn desc_done, bool ctx
> > > > void **cache_objs;
> > > > struct rte_mempool_cache *cache =
> > > > rte_mempool_default_cache(mp, rte_lcore_id());
> > > >
> > > > - if (!cache || cache->len == 0)
> > > > + if (cache == NULL)
> > > > goto normal;
> > > >
> > > > cache_objs = &cache->objs[cache->len];
> > > > --
> > > > 2.43.0
> > >
> > > Yep, it did look strange.
> > > Reviewed-by: Morten Brørup <mb@smartsharesystems.com>
> > >
> > Thanks for review.
>
> BTW, I recall other Intel drivers having the same "feature":
> https://elixir.bootlin.com/dpdk/v24.11.1/source/drivers/net/iavf/iavf_rxtx_vec_avx512.c#L1876
> https://elixir.bootlin.com/dpdk/v24.11.1/source/drivers/net/ice/ice_rxtx_vec_avx512.c#L891
>
With the deduplication work I did earlier this release, this code should
now be shared between ixgbe, i40e, iavf and ice drivers, so we hopefully
can fix all 4 with one change.
next prev parent reply other threads:[~2025-03-10 15:53 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-21 16:58 Intel FAST_FREE offload question Morten Brørup
2025-02-21 17:09 ` Bruce Richardson
2025-02-21 17:16 ` Morten Brørup
2025-03-10 13:25 ` [PATCH] net/intel: allow fast-free to empty cache Bruce Richardson
2025-03-10 15:18 ` Morten Brørup
2025-03-10 15:27 ` Bruce Richardson
2025-03-10 15:34 ` Morten Brørup
2025-03-10 15:53 ` Bruce Richardson [this message]
2025-03-10 17:37 ` Morten Brørup
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Z88K9QPJD5chiPya@bricha3-mobl1.ger.corp.intel.com \
--to=bruce.richardson@intel.com \
--cc=anatoly.burakov@intel.com \
--cc=dev@dpdk.org \
--cc=mb@smartsharesystems.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).