[dpdk-dev] [PATCH] net/bonding: stop and deactivate slaves when bonding port is stopped
Radu Nicolau
radu.nicolau at intel.com
Wed Aug 1 15:18:43 CEST 2018
When a bonding port is stopped also stop and deactivate all slaves.
Otherwise slaves will be still listed as active.
Fixes: 69bce062132b ("net/bonding: do not clear active slave count")
Cc: stable at dpdk.org
Signed-off-by: Radu Nicolau <radu.nicolau at intel.com>
---
drivers/net/bonding/rte_eth_bond_pmd.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c
index 16105cb..960140c 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -2229,12 +2229,15 @@ bond_ethdev_stop(struct rte_eth_dev *eth_dev)
tlb_last_obytets[internals->active_slaves[i]] = 0;
}
- internals->link_status_polling_enabled = 0;
- for (i = 0; i < internals->slave_count; i++)
- internals->slaves[i].last_link_status = 0;
-
eth_dev->data->dev_link.link_status = ETH_LINK_DOWN;
eth_dev->data->dev_started = 0;
+
+ internals->link_status_polling_enabled = 0;
+ for (i = 0; i < internals->slave_count; i++) {
+ internals->slaves[i].last_link_status = 0;
+ rte_eth_dev_stop(internals->slaves[i].port_id);
+ deactivate_slave(eth_dev, internals->slaves[i].port_id);
+ }
}
void
--
2.7.5
More information about the dev
mailing list