patch 'net/cnxk: fix promiscuous mode in multicast enable flow' has been queued to stable release 21.11.1

Kevin Traynor ktraynor at redhat.com
Mon Feb 21 16:34:15 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/661587eaae533a6a394ee8cdbab84abf94e1baa4

Thanks.

Kevin

---
>From 661587eaae533a6a394ee8cdbab84abf94e1baa4 Mon Sep 17 00:00:00 2001
From: Asaf Ravid <aravid at marvell.com>
Date: Wed, 1 Dec 2021 15:59:53 +0530
Subject: [PATCH] net/cnxk: fix promiscuous mode in multicast enable flow

[ upstream commit b922883be94bac9b5c72417349f2f5d25dade0bb ]

When multicast promiscuous was being enabled it caused the unicast
promiscuous to be disabled. This fix resolves this by setting
NIX_RX_MODE_PROMISC when eth_dev->data->promiscuous is set, regardless.

Fixes: 325d79c00a5a ("net/cnxk: support all multicast")

Signed-off-by: Asaf Ravid <aravid at marvell.com>
Acked-by: Jerin Jacob <jerinj at marvell.com>
---
 drivers/common/cnxk/roc_nix_npc.c  | 2 +-
 drivers/net/cnxk/cnxk_ethdev_ops.c | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/common/cnxk/roc_nix_npc.c b/drivers/common/cnxk/roc_nix_npc.c
index c0666c87d5..ad8839dde8 100644
--- a/drivers/common/cnxk/roc_nix_npc.c
+++ b/drivers/common/cnxk/roc_nix_npc.c
@@ -97,5 +97,5 @@ roc_nix_npc_mcast_config(struct roc_nix *roc_nix, bool mcast_enable,
 	if (mcast_enable)
 		req->mode = NIX_RX_MODE_ALLMULTI;
-	else if (prom_enable)
+	if (prom_enable)
 		req->mode = NIX_RX_MODE_PROMISC;
 
diff --git a/drivers/net/cnxk/cnxk_ethdev_ops.c b/drivers/net/cnxk/cnxk_ethdev_ops.c
index ce5f1f7240..34e4809650 100644
--- a/drivers/net/cnxk/cnxk_ethdev_ops.c
+++ b/drivers/net/cnxk/cnxk_ethdev_ops.c
@@ -518,5 +518,6 @@ cnxk_nix_allmulticast_enable(struct rte_eth_dev *eth_dev)
 	struct cnxk_eth_dev *dev = cnxk_eth_pmd_priv(eth_dev);
 
-	return roc_nix_npc_mcast_config(&dev->nix, true, false);
+	return roc_nix_npc_mcast_config(&dev->nix, true,
+					eth_dev->data->promiscuous);
 }
 
-- 
2.34.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-02-21 15:22:46.088494257 +0000
+++ 0066-net-cnxk-fix-promiscuous-mode-in-multicast-enable-fl.patch	2022-02-21 15:22:44.145704247 +0000
@@ -1 +1 @@
-From b922883be94bac9b5c72417349f2f5d25dade0bb Mon Sep 17 00:00:00 2001
+From 661587eaae533a6a394ee8cdbab84abf94e1baa4 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit b922883be94bac9b5c72417349f2f5d25dade0bb ]
+
@@ -11 +12,0 @@
-Cc: stable at dpdk.org



More information about the stable mailing list