[dpdk-stable] patch 'net/bnxt: fix flow steering' has been queued to LTS release 18.11.6

Kevin Traynor ktraynor at redhat.com
Tue Dec 3 19:26:37 CET 2019


Hi,

FYI, your patch has been queued to LTS release 18.11.6

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/10/19. 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-queue

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

Thanks.

Kevin.

---
>From c8b5fcd7003f0993980937700193b22e727e0b0f Mon Sep 17 00:00:00 2001
From: Santoshkumar Karanappa Rastapur <santosh.rastapur at broadcom.com>
Date: Wed, 2 Oct 2019 10:17:30 -0700
Subject: [PATCH] net/bnxt: fix flow steering

[ upstream commit d43fe8ea0c40c5534d83950bff08aa89457a3fd7 ]

When user creates a flow similar to an existing flow with just the
destination queue change, we delete the old filter and allocate a new
one with this destination queue change. We were also allocating a new L2
filter matching the same destination mac resulting in 2 L2 filters for the
same destination mac.
This was causing any flow matching the destination mac to be steered to
this queue instead of the default queue.

Fixed it by deleting this stale L2 filter.

Fixes: 5c1171c97216 ("net/bnxt: refactor filter/flow")

Signed-off-by: Santoshkumar Karanappa Rastapur <santosh.rastapur at broadcom.com>
Reviewed-by: Lance Richardson <lance.richardson at broadcom.com>
Reviewed-by: Somnath Kotur <somnath.kotur at broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
---
 drivers/net/bnxt/bnxt_flow.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/bnxt/bnxt_flow.c b/drivers/net/bnxt/bnxt_flow.c
index 6a5995389..e4fd0d935 100644
--- a/drivers/net/bnxt/bnxt_flow.c
+++ b/drivers/net/bnxt/bnxt_flow.c
@@ -969,4 +969,8 @@ bnxt_match_filter(struct bnxt *bp, struct bnxt_filter_info *nf)
 				if (mf->dst_id == nf->dst_id)
 					return -EEXIST;
+				/* Clear the new L2 filter that was created
+				 * earlier in bnxt_validate_and_parse_flow.
+				 */
+				bnxt_hwrm_clear_l2_filter(bp, nf);
 				/*
 				 * Same Flow, Different queue
-- 
2.21.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-03 17:29:53.461902215 +0000
+++ 0028-net-bnxt-fix-flow-steering.patch	2019-12-03 17:29:51.748749995 +0000
@@ -1 +1 @@
-From d43fe8ea0c40c5534d83950bff08aa89457a3fd7 Mon Sep 17 00:00:00 2001
+From c8b5fcd7003f0993980937700193b22e727e0b0f Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit d43fe8ea0c40c5534d83950bff08aa89457a3fd7 ]
+
@@ -17 +18,0 @@
-Cc: stable at dpdk.org
@@ -28 +29 @@
-index deb9733e9..be9b6fad3 100644
+index 6a5995389..e4fd0d935 100644
@@ -31 +32 @@
-@@ -1029,4 +1029,8 @@ bnxt_match_filter(struct bnxt *bp, struct bnxt_filter_info *nf)
+@@ -969,4 +969,8 @@ bnxt_match_filter(struct bnxt *bp, struct bnxt_filter_info *nf)



More information about the stable mailing list