DPDK patches and discussions
 help / color / mirror / Atom feed
From: Balazs Nemeth <bnemeth@redhat.com>
To: Jerin Jacob <jerinjacobk@gmail.com>,
	Igor Russkikh <irusskikh@marvell.com>
Cc: dpdk-dev <dev@dpdk.org>,
	Devendra Singh Rawat <dsinghrawat@marvell.com>,
	Rasesh Mody <rmody@marvell.com>
Subject: Re: [dpdk-dev] [EXT] [PATCH 0/8] Optimize qede use of rx/tx_entries
Date: Wed, 24 Mar 2021 10:34:35 +0100	[thread overview]
Message-ID: <28894a1a92722d2a8dca2d7afeceb75b77d6903f.camel@redhat.com> (raw)
In-Reply-To: <CALBAE1OgsHm-J3V3wNv94e2aOVVP5rN7dyJyzvu-Fxz-ivp9gQ@mail.gmail.com>

On Wed, 2021-03-24 at 14:48 +0530, Jerin Jacob wrote:
> On Mon, Mar 22, 2021 at 10:38 PM Igor Russkikh
> <irusskikh@marvell.com> wrote:
> > 
> > 
> > 
> > On 3/5/2021 2:13 PM, Balazs Nemeth wrote:
> > > External Email
> > > 
> > > -----------------------------------------------------------------
> > > -----
> > > This patch set optimizes qede_{rx,tx}_entry and introduces
> > > rte_pktmbuf_free_bulk in qede_process_tx_compl. The overall
> > > performance
> > > improvement depends on the use-case; in a physical-virtual-
> > > physical test
> > > on a ThunderX2 99xx system with two SMT threads used in ovs,
> > > and two cores used in a vm, an improvement of around 2.55% is
> > > observed
> > > due to this patch set.
> > > 
> > > Balazs Nemeth (8):
> > >   net/qede: remove flags from qede_tx_entry and simplify to
> > > rte_mbuf
> > >   net/qede: avoid repeatedly calling ecore_chain_get_cons_idx
> > >   net/qede: assume txq->sw_tx_ring[idx] is never null in
> > >     qede_free_tx_pkt
> > >   net/qede: inline qede_free_tx_pkt to prepare for
> > > rte_pktmbuf_free_bulk
> > >   net/qede: use rte_pktmbuf_free_bulk instead of rte_pktmbuf_free
> > >   net/qede: prefetch txq->hw_cons_ptr
> > >   net/qede: prefetch next packet to free
> > >   net/qede: remove page_offset from struct qede_rx_entry and
> > > simplify
> > > 
> > >  drivers/net/qede/qede_rxtx.c | 148 +++++++++++++++++++----------
> > > ------
> > >  drivers/net/qede/qede_rxtx.h |  21 +----
> > >  2 files changed, 81 insertions(+), 88 deletions(-)
> > 
> > Series reviewed, for the series
> > 
> > Acked-by: Igor Russkikh <irusskikh@marvell.com>
> > 
> > One checkpatch warn I see in patchwork output, probably worth
> > fixing:
> > 
> > ERROR:POINTER_LOCATION: "(foo**)" should be "(foo **)"
> > #120: FILE: drivers/net/qede/qede_rxtx.c:56:
> > +       ret = rte_mempool_get_bulk(rxq->mb_pool, (void**)&rxq-
> > >sw_rx_ring[idx], count);
> 
> 
> Hi @Balazs Nemeth
> 
> Please fix the following checkpatc.shh and check-git-log.sh issues
> and
> add Igor reviewed by in next version.
> I will merge the next version with the fixes. Updaed  this series
> status in the patchwork as "Changes requested"
> 

Ok I will provide a new version next week. Thanks for the feedback!

> 
> Wrong headline format:
>         net/qede: remove flags from qede_tx_entry and simplify to
> rte_mbuf
>         net/qede: avoid repeatedly calling ecore_chain_get_cons_idx
>         net/qede: assume txq->sw_tx_ring[idx] is never null in
> qede_free_tx_pkt
>         net/qede: inline qede_free_tx_pkt to prepare for
> rte_pktmbuf_free_bulk
>         net/qede: use rte_pktmbuf_free_bulk instead of
> rte_pktmbuf_free
>         net/qede: prefetch txq->hw_cons_ptr
>         net/qede: remove page_offset from struct qede_rx_entry and
> simplify
> Headline too long:
>         net/qede: remove flags from qede_tx_entry and simplify to
> rte_mbuf
>         net/qede: assume txq->sw_tx_ring[idx] is never null in
> qede_free_tx_pkt
>         net/qede: inline qede_free_tx_pkt to prepare for
> rte_pktmbuf_free_bulk
>         net/qede: use rte_pktmbuf_free_bulk instead of
> rte_pktmbuf_free
>         net/qede: remove page_offset from struct qede_rx_entry and
> simplify
> 
> Invalid patch(es) found - checked 8 patches
> check-git-log failed
> 
> 
> 
> ### net/qede: remove flags from qede_tx_entry and simplify to
> rte_mbuf
> 
> WARNING:LONG_LINE: line length of 89 exceeds 80 columns
> #37: FILE: drivers/net/qede/qede_rxtx.c:429:
> +                                            (sizeof(txq->sw_tx_ring)
> * txq->nb_tx_desc),
> 
> total: 0 errors, 1 warnings, 0 checks, 87 lines checked
> 
> ### net/qede: avoid repeatedly calling ecore_chain_get_cons_idx
> 
> WARNING:BRACES: braces {} are not necessary for single statement
> blocks
> #82: FILE: drivers/net/qede/qede_rxtx.c:934:
> +       while (remaining) {
> +               remaining -= qede_free_tx_pkt(txq);
> +       }
> 
> total: 0 errors, 1 warnings, 0 checks, 67 lines checked
> 
> ### net/qede: use rte_pktmbuf_free_bulk instead of rte_pktmbuf_free
> 
> WARNING:LONG_LINE: line length of 89 exceeds 80 columns
> #48: FILE: drivers/net/qede/qede_rxtx.c:930:
> +               rte_pktmbuf_free_bulk(&txq->sw_tx_ring[first_idx],
> mask - first_idx + 1);
> 
> WARNING:LONG_LINE: line length of 84 exceeds 80 columns
> #51: FILE: drivers/net/qede/qede_rxtx.c:933:
> +               rte_pktmbuf_free_bulk(&txq->sw_tx_ring[first_idx],
> idx
> - first_idx);
> 
> total: 0 errors, 2 warnings, 0 checks, 32 lines checked
> 
> ### net/qede: prefetch next packet to free
> 
> WARNING:REPEATED_WORD: Possible repeated word: 'next'
> #6:
> While handling the current mbuf, pull the next next mbuf into the
> cache.
> 
> WARNING:BLOCK_COMMENT_STYLE: Block comments use * on subsequent lines
> #21: FILE: drivers/net/qede/qede_rxtx.c:919:
> +               /* Prefetch the next mbuf. Note that at least the
> last 4 mbufs
> +                  that are prefetched will not be used in the
> current call. */
> 
> WARNING:BLOCK_COMMENT_STYLE: Block comments use a trailing */ on a
> separate line
> #21: FILE: drivers/net/qede/qede_rxtx.c:919:
> +                  that are prefetched will not be used in the
> current call. */
> 
> total: 0 errors, 3 warnings, 0 checks, 11 lines checked
> 
> ### net/qede: remove page_offset from struct qede_rx_entry and
> simplify
> 
> WARNING:LONG_LINE: line length of 87 exceeds 80 columns
> #49: FILE: drivers/net/qede/qede_rxtx.c:56:
> +       ret = rte_mempool_get_bulk(rxq->mb_pool,
> (void**)&rxq->sw_rx_ring[idx], count);
> 
> ERROR:POINTER_LOCATION: "(foo**)" should be "(foo **)"
> #49: FILE: drivers/net/qede/qede_rxtx.c:56:
> +       ret = rte_mempool_get_bulk(rxq->mb_pool,
> (void**)&rxq->sw_rx_ring[idx], count);
> 
> total: 1 errors, 1 warnings, 0 checks, 174 lines checked
> 
> 
> 
> > 
> > Thanks
> >   Igor
> 

Regards,
Balazs



      reply	other threads:[~2021-03-24  9:34 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-05 13:13 [dpdk-dev] " Balazs Nemeth
2021-03-05 13:13 ` [dpdk-dev] [PATCH 1/8] net/qede: remove flags from qede_tx_entry and simplify to rte_mbuf Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 2/8] net/qede: avoid repeatedly calling ecore_chain_get_cons_idx Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 3/8] net/qede: assume txq->sw_tx_ring[idx] is never null in qede_free_tx_pkt Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 4/8] net/qede: inline qede_free_tx_pkt to prepare for rte_pktmbuf_free_bulk Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 5/8] net/qede: use rte_pktmbuf_free_bulk instead of rte_pktmbuf_free Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 6/8] net/qede: prefetch txq->hw_cons_ptr Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 7/8] net/qede: prefetch next packet to free Balazs Nemeth
2021-03-05 13:14 ` [dpdk-dev] [PATCH 8/8] net/qede: remove page_offset from struct qede_rx_entry and simplify Balazs Nemeth
2021-03-08 18:13 ` [dpdk-dev] [PATCH 0/8] Optimize qede use of rx/tx_entries Jerin Jacob
2021-03-10  6:43   ` [dpdk-dev] [EXT] " Igor Russkikh
2021-03-10  7:51     ` Jerin Jacob
2021-03-10  8:17       ` Igor Russkikh
2021-03-20 13:16     ` Jerin Jacob
2021-03-22 17:08 ` [dpdk-dev] [EXT] " Igor Russkikh
2021-03-24  9:18   ` Jerin Jacob
2021-03-24  9:34     ` Balazs Nemeth [this message]

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=28894a1a92722d2a8dca2d7afeceb75b77d6903f.camel@redhat.com \
    --to=bnemeth@redhat.com \
    --cc=dev@dpdk.org \
    --cc=dsinghrawat@marvell.com \
    --cc=irusskikh@marvell.com \
    --cc=jerinjacobk@gmail.com \
    --cc=rmody@marvell.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).