patch 'eventdev/eth_rx: fix missing internal port checks' has been queued to stable release 21.11.1

Kevin Traynor ktraynor at redhat.com
Mon Feb 21 16:33:23 CET 2022


Hi,

FYI, your patch has been queued to stable release 21.11.1

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 02/26/22. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/kevintraynor/dpdk-stable

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable/commit/8d0ffec0cfd281a4807e4017a9d950d3a992e9a3

Thanks.

Kevin

---
>From 8d0ffec0cfd281a4807e4017a9d950d3a992e9a3 Mon Sep 17 00:00:00 2001
From: Pavan Nikhilesh <pbhagavatula at marvell.com>
Date: Mon, 13 Dec 2021 14:01:43 +0530
Subject: [PATCH] eventdev/eth_rx: fix missing internal port checks

[ upstream commit de3c3a2f20c7a944eb33991bd35fc6739645bb34 ]

When event delivery is through internal port, stats are maintained
by HW and we should avoid reading SW data structures for stats.
Fix missing internal port checks.

Fixes: 995b150c1ae1 ("eventdev/eth_rx: add queue stats API")

Signed-off-by: Pavan Nikhilesh <pbhagavatula at marvell.com>
Acked-by: Jay Jayatheerthan <jay.jayatheerthan at intel.com>
---
 lib/eventdev/rte_event_eth_rx_adapter.c | 24 ++++++++++++++----------
 1 file changed, 14 insertions(+), 10 deletions(-)

diff --git a/lib/eventdev/rte_event_eth_rx_adapter.c b/lib/eventdev/rte_event_eth_rx_adapter.c
index 3182b52c23..f946137b25 100644
--- a/lib/eventdev/rte_event_eth_rx_adapter.c
+++ b/lib/eventdev/rte_event_eth_rx_adapter.c
@@ -2985,13 +2985,15 @@ rte_event_eth_rx_adapter_queue_stats_get(uint8_t id,
 	}
 
-	queue_info = &dev_info->rx_queue[rx_queue_id];
-	event_buf = queue_info->event_buf;
-	q_stats = queue_info->stats;
+	if (dev_info->internal_event_port == 0) {
+		queue_info = &dev_info->rx_queue[rx_queue_id];
+		event_buf = queue_info->event_buf;
+		q_stats = queue_info->stats;
 
-	stats->rx_event_buf_count = event_buf->count;
-	stats->rx_event_buf_size = event_buf->events_size;
-	stats->rx_packets = q_stats->rx_packets;
-	stats->rx_poll_count = q_stats->rx_poll_count;
-	stats->rx_dropped = q_stats->rx_dropped;
+		stats->rx_event_buf_count = event_buf->count;
+		stats->rx_event_buf_size = event_buf->events_size;
+		stats->rx_packets = q_stats->rx_packets;
+		stats->rx_poll_count = q_stats->rx_poll_count;
+		stats->rx_dropped = q_stats->rx_dropped;
+	}
 
 	dev = &rte_eventdevs[rx_adapter->eventdev_id];
@@ -3087,6 +3089,8 @@ rte_event_eth_rx_adapter_queue_stats_reset(uint8_t id,
 	}
 
-	queue_info = &dev_info->rx_queue[rx_queue_id];
-	rxa_queue_stats_reset(queue_info);
+	if (dev_info->internal_event_port == 0) {
+		queue_info = &dev_info->rx_queue[rx_queue_id];
+		rxa_queue_stats_reset(queue_info);
+	}
 
 	dev = &rte_eventdevs[rx_adapter->eventdev_id];
-- 
2.34.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-02-21 15:22:44.984593231 +0000
+++ 0014-eventdev-eth_rx-fix-missing-internal-port-checks.patch	2022-02-21 15:22:44.040704010 +0000
@@ -1 +1 @@
-From de3c3a2f20c7a944eb33991bd35fc6739645bb34 Mon Sep 17 00:00:00 2001
+From 8d0ffec0cfd281a4807e4017a9d950d3a992e9a3 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit de3c3a2f20c7a944eb33991bd35fc6739645bb34 ]
+
@@ -11 +12,0 @@
-Cc: stable at dpdk.org



More information about the stable mailing list