From: Bodong Wang Date: Mon, 18 Feb 2019 03:04:42 +0000 (-0600) Subject: net/mlx5: E-Switch, Disable esw manager vport correctly X-Git-Tag: Ubuntu-5.4-5.4.0-11.14~3453^2~155^2 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=1c50d369f560809d45e75fa9d7d6b3901192c18b;p=mirror_ubuntu-focal-kernel.git net/mlx5: E-Switch, Disable esw manager vport correctly When disabling vport, relevant vport configurations will be cleaned up. These cleanups should be done to the vports which had these configs applied at vport enablement. As esw manager vport didn't have such vport config applied, cleanup should not touch it. Fixes: de9e6a8136c5 ("net/mlx5: E-Switch, Properly refer to host PF vport as other vport") Signed-off-by: Bodong Wang Reported-by: Eli Britstein Reviewed-by: Or Gerlitz Signed-off-by: Saeed Mahameed --- diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c index d4f6859bf58c..6cb9710f76d5 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c @@ -1606,7 +1606,8 @@ static void esw_disable_vport(struct mlx5_eswitch *esw, esw_vport_change_handle_locked(vport); vport->enabled_events = 0; esw_vport_disable_qos(esw, vport_num); - if (esw->mode == SRIOV_LEGACY) { + if (esw->manager_vport != vport_num && + esw->mode == SRIOV_LEGACY) { mlx5_modify_vport_admin_state(esw->dev, MLX5_VPORT_STATE_OP_MOD_ESW_VPORT, vport_num, 1,