aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/main.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/main.c b/drivers/net/ethernet/mellanox/mlx5/core/main.c
index 0d2c8dcd6eae..06562c9a6b9c 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/main.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/main.c
@@ -1482,9 +1482,16 @@ static int mlx5_try_fast_unload(struct mlx5_core_dev *dev)
1482 return -EAGAIN; 1482 return -EAGAIN;
1483 } 1483 }
1484 1484
1485 /* Panic tear down fw command will stop the PCI bus communication
1486 * with the HCA, so the health polll is no longer needed.
1487 */
1488 mlx5_drain_health_wq(dev);
1489 mlx5_stop_health_poll(dev);
1490
1485 ret = mlx5_cmd_force_teardown_hca(dev); 1491 ret = mlx5_cmd_force_teardown_hca(dev);
1486 if (ret) { 1492 if (ret) {
1487 mlx5_core_dbg(dev, "Firmware couldn't do fast unload error: %d\n", ret); 1493 mlx5_core_dbg(dev, "Firmware couldn't do fast unload error: %d\n", ret);
1494 mlx5_start_health_poll(dev);
1488 return ret; 1495 return ret;
1489 } 1496 }
1490 1497