patch 'net/bnxt: handle queue stop during RSS flow create' has been queued to stable release 21.11.2
Kevin Traynor
ktraynor at redhat.com
Wed May 25 18:28:35 CEST 2022
Hi,
FYI, your patch has been queued to stable release 21.11.2
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 05/30/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/8c464cf6185a3fd42b7d3e504489248b03a4e3a2
Thanks.
Kevin
---
>From 8c464cf6185a3fd42b7d3e504489248b03a4e3a2 Mon Sep 17 00:00:00 2001
From: Somnath Kotur <somnath.kotur at broadcom.com>
Date: Wed, 27 Apr 2022 20:28:14 +0530
Subject: [PATCH] net/bnxt: handle queue stop during RSS flow create
[ upstream commit 962a521291e303e54a3b9a766ec43a30e23c2083 ]
The programming of the RSS table was not taking into account if
any of the queues in the set were stopped prior to the flow
creation, hence leading to a vnic RSS config cmd failure thrown by
the FW.
Fix by programming only the active queues in the RSS action queue
set.
Fixes: 239695f754cb ("net/bnxt: enhance RSS action support")
Signed-off-by: Somnath Kotur <somnath.kotur at broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
Reviewed-by: Kalesh AP <kalesh-anakkur.purayil at broadcom.com>
---
drivers/net/bnxt/bnxt_flow.c | 16 +++++++++++++---
1 file changed, 13 insertions(+), 3 deletions(-)
diff --git a/drivers/net/bnxt/bnxt_flow.c b/drivers/net/bnxt/bnxt_flow.c
index 2bb56692a5..8bdf2405f0 100644
--- a/drivers/net/bnxt/bnxt_flow.c
+++ b/drivers/net/bnxt/bnxt_flow.c
@@ -1116,5 +1116,5 @@ bnxt_vnic_rss_cfg_update(struct bnxt *bp,
{
const struct rte_flow_action_rss *rss;
- unsigned int rss_idx, i, j;
+ unsigned int rss_idx, i, j, fw_idx;
uint16_t hash_type;
uint64_t types;
@@ -1233,9 +1233,19 @@ bnxt_vnic_rss_cfg_update(struct bnxt *bp,
/* Prepare the indirection table */
- for (rss_idx = 0; rss_idx < HW_HASH_INDEX_SIZE; rss_idx++) {
+ for (rss_idx = 0, fw_idx = 0; rss_idx < HW_HASH_INDEX_SIZE;
+ rss_idx++, fw_idx++) {
+ uint8_t *rxq_state = bp->eth_dev->data->rx_queue_state;
struct bnxt_rx_queue *rxq;
uint32_t idx;
- idx = rss->queue[rss_idx % rss->queue_num];
+ for (i = 0; i < bp->rx_cp_nr_rings; i++) {
+ idx = rss->queue[fw_idx % rss->queue_num];
+ if (rxq_state[idx] != RTE_ETH_QUEUE_STATE_STOPPED)
+ break;
+ fw_idx++;
+ }
+
+ if (i == bp->rx_cp_nr_rings)
+ return 0;
if (BNXT_CHIP_P5(bp)) {
--
2.34.3
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2022-05-25 17:26:59.583611510 +0100
+++ 0043-net-bnxt-handle-queue-stop-during-RSS-flow-create.patch 2022-05-25 17:26:58.630828424 +0100
@@ -1 +1 @@
-From 962a521291e303e54a3b9a766ec43a30e23c2083 Mon Sep 17 00:00:00 2001
+From 8c464cf6185a3fd42b7d3e504489248b03a4e3a2 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 962a521291e303e54a3b9a766ec43a30e23c2083 ]
+
@@ -14 +15,0 @@
-Cc: stable at dpdk.org
@@ -24 +25 @@
-index fc5bacf82c..f8e10968e3 100644
+index 2bb56692a5..8bdf2405f0 100644
More information about the stable
mailing list