From: fengchengwen <fengchengwen@huawei.com>
To: Talluri Chaitanyababu <chaitanyababux.talluri@intel.com>,
<dev@dpdk.org>, <bruce.richardson@intel.com>,
<aman.deep.singh@intel.com>
Cc: <shaiq.wani@intel.com>, <stable@dpdk.org>
Subject: Re: [PATCH v4] app/testpmd: fix DCB forwarding TC mismatch handling
Date: Thu, 19 Mar 2026 09:35:56 +0800 [thread overview]
Message-ID: <93153650-162e-40ca-ab72-82c0faf4a3a1@huawei.com> (raw)
In-Reply-To: <20260318061720.1885589-1-chaitanyababux.talluri@intel.com>
Hi,
On 3/18/2026 2:17 PM, Talluri Chaitanyababu wrote:
> Fix DCB forwarding issues when RX and TX ports are configured with
> different numbers of traffic classes (TCs).
Suggest: Fix DCB forwarding failed when the number of TCs on ports is inconsistent.
And RX/TX -> Rx/Tx
>
> When ports have asymmetric TC configurations (e.g. 4 TCs on RX and 8 TCs
> on TX), the forwarding logic iterates based only on the RX port TC count.
e.g. 4 TCs on RX and 8 TCs on TX
suggest replaced with: e.g. 2 ports, port0 has 4 TCs and port1 has 8 TCs
And suggest add the testpmd command in commit-log like below so that others could reproduce:
x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 1-20 -n 4 -a 0000:31:00.0 -a 0000:4b:00.0 --file-prefix=testpmd1 -- -i --rxq=256 --txq=256 --nb-cores=16 --total-num-mbufs=600000
port stop all
port config 0 dcb vt off 8 pfc on
port config 1 dcb vt off 8 pfc on
port start all
port stop all
port config 0 dcb vt off 4 pfc on
> This can lead to accessing invalid TX TC entries and incorrect queue
> mapping, potentially causing multiple threads to operate on the same
> queues.
Suggest: This can lead to accessing invalid TX TC entries and incorrect queue
mapping and which will result SIGFPE exception.
>
> Additionally, the existing VMDq pool guard in dcb_fwd_config_setup()
> only checks RX queue counts and does not consider the case where the TX
> port has no queues for a given pool/TC combination.
>
> Fix this by:
> 1. Introducing an effective TC count using RTE_MIN() of RX and TX TC
> values, ensuring forwarding only operates on valid TCs supported by
> both ports.
> 2. Updating the loop condition to use the effective TC count instead of
> only the RX TC count.
> 3. Extending validation in dcb_fwd_check_cores_per_tc() to ensure both RX
> and TX queue counts are divisible by dcb_fwd_tc_cores, preventing
> invalid configurations.
Suggest 1&2 as one commit, and 3 as another commit.
>
> This ensures correct queue mapping and avoids issues when switching
> between different DCB configurations across ports.
>
> Fixes: 945e9be0a803 ("app/testpmd: support multi-cores process one TC")
The SIGFPE error was not introduced by this commit as I pointed out in early reply to v2.
I just suggest you split two commit, the second commit could adds this fix tag, but as the
first commit please find the real commit which introduce the bug.
> Cc: stable@dpdk.org
>
> Signed-off-by: Talluri Chaitanyababu <chaitanyababux.talluri@intel.com>
> Signed-off-by: Shaiq Wani <shaiq.wani@intel.com>
> ---
...
next prev parent reply other threads:[~2026-03-19 1:36 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-11 8:37 [PATCH] app/testpmd: fix DCB forwarding TC mask and queue guard Talluri Chaitanyababu
2026-03-11 15:56 ` Stephen Hemminger
2026-03-12 10:36 ` [PATCH v2] " Talluri Chaitanyababu
2026-03-12 18:44 ` Stephen Hemminger
2026-03-13 0:19 ` fengchengwen
2026-03-16 6:05 ` Talluri, ChaitanyababuX
2026-03-17 1:07 ` fengchengwen
2026-03-18 7:21 ` Talluri, ChaitanyababuX
2026-03-19 1:19 ` fengchengwen
2026-03-16 6:21 ` [PATCH v3] " Talluri Chaitanyababu
2026-03-17 1:23 ` fengchengwen
2026-03-17 8:57 ` Thomas Monjalon
2026-03-17 9:02 ` Thomas Monjalon
2026-03-18 6:17 ` [PATCH v4] app/testpmd: fix DCB forwarding TC mismatch handling Talluri Chaitanyababu
2026-03-19 1:35 ` fengchengwen [this message]
2026-03-20 6:29 ` [PATCH v5] " Talluri Chaitanyababu
2026-03-20 9:38 ` fengchengwen
2026-03-24 0:06 ` Stephen Hemminger
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=93153650-162e-40ca-ab72-82c0faf4a3a1@huawei.com \
--to=fengchengwen@huawei.com \
--cc=aman.deep.singh@intel.com \
--cc=bruce.richardson@intel.com \
--cc=chaitanyababux.talluri@intel.com \
--cc=dev@dpdk.org \
--cc=shaiq.wani@intel.com \
--cc=stable@dpdk.org \
/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