[PATCH] ethdev: keep promiscuous/allmulti value before enabling
Sunyang Wu
sunyang.wu at jaguarmicro.com
Mon Jul 21 13:51:39 CEST 2025
The values of the promiscuous and allmulticast variables
are set after calling the driver, according to the return value.
Fixes: 400d75818266 ("ethdev: check device promiscuous state")
de5ccf0775ae ("ethdev:do nothing if all-multicast mode is applied
again")
Cc: stable at dpdk.org
Signed-off-by: Sunyang Wu <sunyang.wu at jaguarmicro.com>
---
lib/ethdev/rte_ethdev.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/lib/ethdev/rte_ethdev.c b/lib/ethdev/rte_ethdev.c
index dd7c00bc94..41f96071e2 100644
--- a/lib/ethdev/rte_ethdev.c
+++ b/lib/ethdev/rte_ethdev.c
@@ -3018,7 +3018,8 @@ rte_eth_promiscuous_enable(uint16_t port_id)
return -ENOTSUP;
diag = dev->dev_ops->promiscuous_enable(dev);
- dev->data->promiscuous = (diag == 0) ? 1 : 0;
+ if (diag == 0)
+ dev->data->promiscuous = 1;
diag = eth_err(port_id, diag);
@@ -3086,7 +3087,8 @@ rte_eth_allmulticast_enable(uint16_t port_id)
if (dev->dev_ops->allmulticast_enable == NULL)
return -ENOTSUP;
diag = dev->dev_ops->allmulticast_enable(dev);
- dev->data->all_multicast = (diag == 0) ? 1 : 0;
+ if (diag == 0)
+ dev->data->all_multicast = 1;
diag = eth_err(port_id, diag);
--
2.19.0.rc0.windows.1
More information about the dev
mailing list