[dpdk-dev] [PATCH] kni: check code of allmulticast mode switch
Min Hu (Connor)
humin29 at huawei.com
Fri Apr 23 10:12:42 CEST 2021
From: Chengwen Feng <fengchengwen at huawei.com>
Some drivers may return errcode when switch allmulticast mode, so it's
necessary to check the return code.
Fixes: b34801d1aa2e ("kni: support allmulticast mode set")
Cc: stable at dpdk.org
Signed-off-by: Chengwen Feng <fengchengwen at huawei.com>
Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
---
lib/kni/rte_kni.c | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/lib/kni/rte_kni.c b/lib/kni/rte_kni.c
index 9dae6a8..aa9b5b7 100644
--- a/lib/kni/rte_kni.c
+++ b/lib/kni/rte_kni.c
@@ -514,6 +514,8 @@ kni_config_promiscusity(uint16_t port_id, uint8_t to_on)
static int
kni_config_allmulticast(uint16_t port_id, uint8_t to_on)
{
+ int ret;
+
if (!rte_eth_dev_is_valid_port(port_id)) {
RTE_LOG(ERR, KNI, "Invalid port id %d\n", port_id);
return -EINVAL;
@@ -523,11 +525,16 @@ kni_config_allmulticast(uint16_t port_id, uint8_t to_on)
port_id, to_on);
if (to_on)
- rte_eth_allmulticast_enable(port_id);
+ ret = rte_eth_allmulticast_enable(port_id);
else
- rte_eth_allmulticast_disable(port_id);
+ ret = rte_eth_allmulticast_disable(port_id);
+ if (ret != 0)
+ RTE_LOG(ERR, KNI,
+ "Failed to %s allmulticast mode for port %u: %s\n",
+ to_on ? "enable" : "disable", port_id,
+ rte_strerror(-ret));
- return 0;
+ return ret;
}
int
--
2.7.4
More information about the dev
mailing list