[AMD Official Use Only - AMD Internal Distribution Only]

Hi Thomas, 


From: Thomas Monjalon <thomas@monjalon.net>
Sent: Wednesday, November 19, 2025 6:27 PM
To: Tummala, Sivaprasad <Sivaprasad.Tummala@amd.com>
Cc: Konstantin Ananyev <konstantin.ananyev@huawei.com>; Nithin Dabilpuram <nithind1988@gmail.com>; stable@dpdk.org <stable@dpdk.org>; jerinj@marvell.com <jerinj@marvell.com>; kirankumark@marvell.com <kirankumark@marvell.com>; ndabilpuram@marvell.com <ndabilpuram@marvell.com>; yanzhirun_163@163.com <yanzhirun_163@163.com>; david.marchand@redhat.com <david.marchand@redhat.com>; ktraynor@redhat.com <ktraynor@redhat.com>; konstantin.v.ananyev@yandex.ru <konstantin.v.ananyev@yandex.ru>; bruce.richardson@intel.com <bruce.richardson@intel.com>; maxime.coquelin@redhat.com <maxime.coquelin@redhat.com>; aconole@redhat.com <aconole@redhat.com>; dev@dpdk.org <dev@dpdk.org>; stable@dpdk.org <stable@dpdk.org>
Subject: Re: [PATCH] examples/l3fwd-graph: remove redundant Tx queue limit

Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.


19/11/2025 13:08, Tummala, Sivaprasad:
> From: Thomas Monjalon <thomas@monjalon.net>
> 06/10/2025 10:58, Tummala, Sivaprasad:
> > From: Konstantin Ananyev <konstantin.ananyev@huawei.com>
> > > > On Mon, Sep 1, 2025 at 11:39 PM Sivaprasad Tummala
> > > > <sivaprasad.tummala@amd.com> wrote:
> > > > >
> > > > > In `l3fwd-graph` application, Tx queues are configured per lcore
> > > > > to enable a lockless design and achieve optimal performance.
> > > > >
> > > > > The `MAX_TX_QUEUE_PER_PORT` macro, defined as `RTE_MAX_ETHPORTS`,
> > > > > introduced an artificial constraint on the number of Tx queues
> > > > > and limited core-scaling performance.
> > > > >
> > > > > This patch removes the unused `MAX_TX_QUEUE_PER_PORT` macro and
> > > > > redundant Tx queue check, allowing Tx queues to scale directly
> > > > > with the no. of lcores.
> > > > >
> > > > > Fixes: 08bd1a174461 ("examples/l3fwd-graph: add graph-based l3fwd skeleton")
> > > > > Cc: ndabilpuram@marvell.com
> > > > > Cc: stable@dpdk.org
> > > > >
> > > > > Signed-off-by: Sivaprasad Tummala <sivaprasad.tummala@amd.com>
> > > > > ---
> > > > >  examples/l3fwd-graph/main.c | 3 ---
> > > > >  1 file changed, 3 deletions(-)
> > > > >
> > > > > diff --git a/examples/l3fwd-graph/main.c b/examples/l3fwd-graph/main.c
> > > > > index 92cdaa1ebe..12908acbba 100644
> > > > > --- a/examples/l3fwd-graph/main.c
> > > > > +++ b/examples/l3fwd-graph/main.c
> > > > > @@ -49,7 +49,6 @@
> > > > >  #define RX_DESC_DEFAULT 1024
> > > > >  #define TX_DESC_DEFAULT 1024
> > > > >
> > > > > -#define MAX_TX_QUEUE_PER_PORT RTE_MAX_ETHPORTS
> > > > >  #define MAX_RX_QUEUE_PER_PORT 128
> > >
> > > AFAIK, in the mainline we actually have:
> > > #define MAX_TX_QUEUE_PER_PORT RTE_MAX_LCORE
> > >
> > In l3fwd-graph app, this change is not available and instead we have
> >> #define MAX_TX_QUEUE_PER_PORT RTE_MAX_ETHPORTS
> >>
> >> > since:
> >> > commit 88256ed85338c572d73006e4c4530a52d3b477ff
> >> > Author: Harman Kalra <hkalra@marvell.com>
> >> > Date:   Tue Jan 12 23:54:46 2021 +0530
> >> >
> >> >     examples/l3fwd: remove limitation on Tx queue count
> >> >
> >> > What I am missing here?
>> >> This patch marked here was fixing l3fwd app and not l3fwd-graph
>>
>> > Why not applying the same change to both examples?
>> Yes, that's what the patch is intended for to fix l3fwd-graph and tx queues will scale with lcores and limited by RTE_MAX_LCORES.

>But it is not done the same way.
> Here you remove MAX_TX_QUEUE_PER_PORT.
> Do you want to do the same in l3fwd?
Yes, it's better to fix the same in l3fwd as "MAX_TX_QUEUE_PER_PORT" is redundant.
I can submit a separate patch for l3fwd.