patch 'ethdev: keep promiscuous/allmulti value before disabling' has been queued to stable release 24.11.3
Kevin Traynor
ktraynor at redhat.com
Fri Jul 18 21:31:39 CEST 2025
Hi,
FYI, your patch has been queued to stable release 24.11.3
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/23/25. 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/f23a5bb368641f38f7b5d8eb5247297b324baaf1
Thanks.
Kevin
---
>From f23a5bb368641f38f7b5d8eb5247297b324baaf1 Mon Sep 17 00:00:00 2001
From: Sunyang Wu <sunyang.wu at jaguarmicro.com>
Date: Thu, 22 May 2025 15:42:42 +0800
Subject: [PATCH] ethdev: keep promiscuous/allmulti value before disabling
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
[ upstream commit 00add16978762a8bcd98cd9465503194dc4c1e9a ]
The values were reset to 0 before calling the driver function
for disabling promiscuous or allmulticast,
which could lead the driver to skip disabling.
The values of the promiscuous and allmulticast variables
are set after calling the driver, according to the return value.
Fixes: af75078fece3 ("first public release")
Signed-off-by: Sunyang Wu <sunyang.wu at jaguarmicro.com>
Signed-off-by: Morten Brørup <mb at smartsharesystems.com>
---
lib/ethdev/rte_ethdev.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/lib/ethdev/rte_ethdev.c b/lib/ethdev/rte_ethdev.c
index 5d24fd6865..58cb952121 100644
--- a/lib/ethdev/rte_ethdev.c
+++ b/lib/ethdev/rte_ethdev.c
@@ -2979,8 +2979,7 @@ rte_eth_promiscuous_disable(uint16_t port_id)
return -ENOTSUP;
- dev->data->promiscuous = 0;
diag = (*dev->dev_ops->promiscuous_disable)(dev);
- if (diag != 0)
- dev->data->promiscuous = 1;
+ if (diag == 0)
+ dev->data->promiscuous = 0;
diag = eth_err(port_id, diag);
@@ -3044,8 +3043,8 @@ rte_eth_allmulticast_disable(uint16_t port_id)
if (*dev->dev_ops->allmulticast_disable == NULL)
return -ENOTSUP;
- dev->data->all_multicast = 0;
+
diag = (*dev->dev_ops->allmulticast_disable)(dev);
- if (diag != 0)
- dev->data->all_multicast = 1;
+ if (diag == 0)
+ dev->data->all_multicast = 0;
diag = eth_err(port_id, diag);
--
2.50.0
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2025-07-18 20:29:16.753400231 +0100
+++ 0165-ethdev-keep-promiscuous-allmulti-value-before-disabl.patch 2025-07-18 20:29:11.174908079 +0100
@@ -1 +1 @@
-From 00add16978762a8bcd98cd9465503194dc4c1e9a Mon Sep 17 00:00:00 2001
+From f23a5bb368641f38f7b5d8eb5247297b324baaf1 Mon Sep 17 00:00:00 2001
@@ -8,0 +9,2 @@
+[ upstream commit 00add16978762a8bcd98cd9465503194dc4c1e9a ]
+
@@ -17 +18,0 @@
-Cc: stable at dpdk.org
@@ -26 +27 @@
-index d4197322a0..dd7c00bc94 100644
+index 5d24fd6865..58cb952121 100644
@@ -29 +30 @@
-@@ -3045,8 +3045,7 @@ rte_eth_promiscuous_disable(uint16_t port_id)
+@@ -2979,8 +2979,7 @@ rte_eth_promiscuous_disable(uint16_t port_id)
@@ -33 +34 @@
- diag = dev->dev_ops->promiscuous_disable(dev);
+ diag = (*dev->dev_ops->promiscuous_disable)(dev);
@@ -40,2 +41,2 @@
-@@ -3113,8 +3112,8 @@ rte_eth_allmulticast_disable(uint16_t port_id)
- if (dev->dev_ops->allmulticast_disable == NULL)
+@@ -3044,8 +3043,8 @@ rte_eth_allmulticast_disable(uint16_t port_id)
+ if (*dev->dev_ops->allmulticast_disable == NULL)
@@ -45 +46 @@
- diag = dev->dev_ops->allmulticast_disable(dev);
+ diag = (*dev->dev_ops->allmulticast_disable)(dev);
More information about the stable
mailing list