[dpdk-dev] [PATCH] net/qede: fix link state configuration
Rasesh Mody
rmody at marvell.com
Tue May 12 02:46:24 CEST 2020
Move link state enable/disable to dev_start() and dev_stop()
respectively. This will ensure when devices are stopped,
link status will be appropriately shown as down.
Fixes: dd28bc8c6ef4 ("net/qede: fix VF port creation sequence")
Cc: stable at dpdk.org
Signed-off-by: Shahed Shaikh <shshaikh at marvell.com>
Signed-off-by: Rasesh Mody <rmody at marvell.com>
Signed-off-by: Igor Russkikh <irusskikh at marvell.com>
---
drivers/net/qede/qede_ethdev.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c
index bcd8252d9..9a5847076 100644
--- a/drivers/net/qede/qede_ethdev.c
+++ b/drivers/net/qede/qede_ethdev.c
@@ -1150,6 +1150,9 @@ static int qede_dev_start(struct rte_eth_dev *eth_dev)
if (qede_activate_vport(eth_dev, true))
goto err;
+ /* Bring-up the link */
+ qede_dev_set_link_state(eth_dev, true);
+
/* Update link status */
qede_link_update(eth_dev, 0);
@@ -1179,6 +1182,12 @@ static void qede_dev_stop(struct rte_eth_dev *eth_dev)
*/
qede_assign_rxtx_handlers(eth_dev, true);
+ /* Bring the link down */
+ qede_dev_set_link_state(eth_dev, false);
+
+ /* Update link status */
+ qede_link_update(eth_dev, 0);
+
/* Disable vport */
if (qede_activate_vport(eth_dev, false))
return;
@@ -1563,8 +1572,6 @@ static void qede_dev_close(struct rte_eth_dev *eth_dev)
eth_dev->data->nb_rx_queues = 0;
eth_dev->data->nb_tx_queues = 0;
- /* Bring the link down */
- qede_dev_set_link_state(eth_dev, false);
qdev->ops->common->slowpath_stop(edev);
qdev->ops->common->remove(edev);
rte_intr_disable(&pci_dev->intr_handle);
@@ -2671,9 +2678,6 @@ static int qede_common_dev_init(struct rte_eth_dev *eth_dev, bool is_vf)
eth_dev->dev_ops = (is_vf) ? &qede_eth_vf_dev_ops : &qede_eth_dev_ops;
- /* Bring-up the link */
- qede_dev_set_link_state(eth_dev, true);
-
adapter->num_tx_queues = 0;
adapter->num_rx_queues = 0;
SLIST_INIT(&adapter->arfs_info.arfs_list_head);
--
2.18.0
More information about the dev
mailing list