* [PATCH] net/null: fix Tx statistics accumulation
@ 2026-01-29 8:51 Zhanibek Bakin
0 siblings, 0 replies; 3+ messages in thread
From: Zhanibek Bakin @ 2026-01-29 8:51 UTC (permalink / raw)
To: dev; +Cc: mtetsuyah, stephen, Zhanibek Bakin, stable
The eth_stats_get() function incorrectly uses assignment (=) instead
of accumulation (+=) for opackets and obytes in the TX queue loop.
This causes only the last TX queue's statistics to be reported,
while the RX side correctly uses +=.
Fixes: 31326ce7f15 ("net/null: count all queues")
Cc: stable@dpdk.org
Signed-off-by: Zhanibek Bakin <zhanibek.bakin@gmail.com>
---
drivers/net/null/rte_eth_null.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/null/rte_eth_null.c b/drivers/net/null/rte_eth_null.c
index 46e7e7bd8c..7fba3a661b 100644
--- a/drivers/net/null/rte_eth_null.c
+++ b/drivers/net/null/rte_eth_null.c
@@ -345,8 +345,8 @@ eth_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats,
pkts = rte_atomic_load_explicit(&q->tx_pkts, rte_memory_order_relaxed);
bytes = rte_atomic_load_explicit(&q->tx_bytes, rte_memory_order_relaxed);
- stats->opackets = pkts;
- stats->obytes = bytes;
+ stats->opackets += pkts;
+ stats->obytes += bytes;
if (qstats != NULL && i < RTE_ETHDEV_QUEUE_STAT_CNTRS) {
qstats->q_opackets[i] = pkts;
--
2.43.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH] net/null: fix Tx statistics accumulation
@ 2026-01-29 9:03 Zhanibek Bakin
2026-01-29 20:17 ` Stephen Hemminger
0 siblings, 1 reply; 3+ messages in thread
From: Zhanibek Bakin @ 2026-01-29 9:03 UTC (permalink / raw)
To: dev; +Cc: mtetsuyah, stephen, Zhanibek Bakin, stable
The eth_stats_get() function incorrectly uses assignment (=) instead
of accumulation (+=) for opackets and obytes in the TX queue loop.
This causes only the last TX queue's statistics to be reported,
while the RX side correctly uses +=.
Fixes: 31326ce7f151 ("net/null: count all queues")
Cc: stable@dpdk.org
Signed-off-by: Zhanibek Bakin <zhanibek.bakin@gmail.com>
---
v2: Fixed Fixes tag to use 12-character hash
---
drivers/net/null/rte_eth_null.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/null/rte_eth_null.c b/drivers/net/null/rte_eth_null.c
index 46e7e7bd8c..7fba3a661b 100644
--- a/drivers/net/null/rte_eth_null.c
+++ b/drivers/net/null/rte_eth_null.c
@@ -345,8 +345,8 @@ eth_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats,
pkts = rte_atomic_load_explicit(&q->tx_pkts, rte_memory_order_relaxed);
bytes = rte_atomic_load_explicit(&q->tx_bytes, rte_memory_order_relaxed);
- stats->opackets = pkts;
- stats->obytes = bytes;
+ stats->opackets += pkts;
+ stats->obytes += bytes;
if (qstats != NULL && i < RTE_ETHDEV_QUEUE_STAT_CNTRS) {
qstats->q_opackets[i] = pkts;
--
2.43.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] net/null: fix Tx statistics accumulation
2026-01-29 9:03 Zhanibek Bakin
@ 2026-01-29 20:17 ` Stephen Hemminger
0 siblings, 0 replies; 3+ messages in thread
From: Stephen Hemminger @ 2026-01-29 20:17 UTC (permalink / raw)
To: Zhanibek Bakin; +Cc: dev, mtetsuyah, stable
On Thu, 29 Jan 2026 14:03:12 +0500
Zhanibek Bakin <zhanibek.bakin@gmail.com> wrote:
> The eth_stats_get() function incorrectly uses assignment (=) instead
> of accumulation (+=) for opackets and obytes in the TX queue loop.
> This causes only the last TX queue's statistics to be reported,
> while the RX side correctly uses +=.
>
> Fixes: 31326ce7f151 ("net/null: count all queues")
> Cc: stable@dpdk.org
>
> Signed-off-by: Zhanibek Bakin <zhanibek.bakin@gmail.com>
> ---
> v2: Fixed Fixes tag to use 12-character hash
> ---
Looks good, queued to next-net.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-01-29 20:17 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-29 8:51 [PATCH] net/null: fix Tx statistics accumulation Zhanibek Bakin
-- strict thread matches above, loose matches on Subject: below --
2026-01-29 9:03 Zhanibek Bakin
2026-01-29 20:17 ` Stephen Hemminger
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox