Commit ba3d85f0 authored by Jiri Pirko's avatar Jiri Pirko Committed by Saeed Mahameed

net/mlx5: Call mlx5_esw_offloads_rep_load/unload() for uplink port directly

For uplink port, mlx5_esw_offloads_load/unload_rep() are currently
called. There are 2 check inside, which effectively make the
functions a simple wrappers of mlx5_esw_offloads_rep_load/unload()
for uplink port. So avoid one check and indirection and call
mlx5_esw_offloads_rep_load/unload() for uplink port directly.
Signed-off-by: default avatarJiri Pirko <jiri@nvidia.com>
Reviewed-by: default avatarShay Drory <shayd@nvidia.com>
Signed-off-by: default avatarSaeed Mahameed <saeedm@nvidia.com>
parent 6c8f7c43
...@@ -2542,11 +2542,9 @@ int mlx5_esw_offloads_load_rep(struct mlx5_eswitch *esw, u16 vport_num) ...@@ -2542,11 +2542,9 @@ int mlx5_esw_offloads_load_rep(struct mlx5_eswitch *esw, u16 vport_num)
if (esw->mode != MLX5_ESWITCH_OFFLOADS) if (esw->mode != MLX5_ESWITCH_OFFLOADS)
return 0; return 0;
if (vport_num != MLX5_VPORT_UPLINK) { err = mlx5_esw_offloads_devlink_port_register(esw, vport_num);
err = mlx5_esw_offloads_devlink_port_register(esw, vport_num); if (err)
if (err) return err;
return err;
}
err = mlx5_esw_offloads_rep_load(esw, vport_num); err = mlx5_esw_offloads_rep_load(esw, vport_num);
if (err) if (err)
...@@ -2554,8 +2552,7 @@ int mlx5_esw_offloads_load_rep(struct mlx5_eswitch *esw, u16 vport_num) ...@@ -2554,8 +2552,7 @@ int mlx5_esw_offloads_load_rep(struct mlx5_eswitch *esw, u16 vport_num)
return err; return err;
load_err: load_err:
if (vport_num != MLX5_VPORT_UPLINK) mlx5_esw_offloads_devlink_port_unregister(esw, vport_num);
mlx5_esw_offloads_devlink_port_unregister(esw, vport_num);
return err; return err;
} }
...@@ -2566,8 +2563,7 @@ void mlx5_esw_offloads_unload_rep(struct mlx5_eswitch *esw, u16 vport_num) ...@@ -2566,8 +2563,7 @@ void mlx5_esw_offloads_unload_rep(struct mlx5_eswitch *esw, u16 vport_num)
mlx5_esw_offloads_rep_unload(esw, vport_num); mlx5_esw_offloads_rep_unload(esw, vport_num);
if (vport_num != MLX5_VPORT_UPLINK) mlx5_esw_offloads_devlink_port_unregister(esw, vport_num);
mlx5_esw_offloads_devlink_port_unregister(esw, vport_num);
} }
static int esw_set_slave_root_fdb(struct mlx5_core_dev *master, static int esw_set_slave_root_fdb(struct mlx5_core_dev *master,
...@@ -3471,7 +3467,7 @@ int esw_offloads_enable(struct mlx5_eswitch *esw) ...@@ -3471,7 +3467,7 @@ int esw_offloads_enable(struct mlx5_eswitch *esw)
vport->info.link_state = MLX5_VPORT_ADMIN_STATE_DOWN; vport->info.link_state = MLX5_VPORT_ADMIN_STATE_DOWN;
/* Uplink vport rep must load first. */ /* Uplink vport rep must load first. */
err = mlx5_esw_offloads_load_rep(esw, MLX5_VPORT_UPLINK); err = mlx5_esw_offloads_rep_load(esw, MLX5_VPORT_UPLINK);
if (err) if (err)
goto err_uplink; goto err_uplink;
...@@ -3482,7 +3478,7 @@ int esw_offloads_enable(struct mlx5_eswitch *esw) ...@@ -3482,7 +3478,7 @@ int esw_offloads_enable(struct mlx5_eswitch *esw)
return 0; return 0;
err_vports: err_vports:
mlx5_esw_offloads_unload_rep(esw, MLX5_VPORT_UPLINK); mlx5_esw_offloads_rep_unload(esw, MLX5_VPORT_UPLINK);
err_uplink: err_uplink:
esw_offloads_steering_cleanup(esw); esw_offloads_steering_cleanup(esw);
err_steering_init: err_steering_init:
...@@ -3520,7 +3516,7 @@ static int esw_offloads_stop(struct mlx5_eswitch *esw, ...@@ -3520,7 +3516,7 @@ static int esw_offloads_stop(struct mlx5_eswitch *esw,
void esw_offloads_disable(struct mlx5_eswitch *esw) void esw_offloads_disable(struct mlx5_eswitch *esw)
{ {
mlx5_eswitch_disable_pf_vf_vports(esw); mlx5_eswitch_disable_pf_vf_vports(esw);
mlx5_esw_offloads_unload_rep(esw, MLX5_VPORT_UPLINK); mlx5_esw_offloads_rep_unload(esw, MLX5_VPORT_UPLINK);
esw_set_passing_vport_metadata(esw, false); esw_set_passing_vport_metadata(esw, false);
esw_offloads_steering_cleanup(esw); esw_offloads_steering_cleanup(esw);
mapping_destroy(esw->offloads.reg_c0_obj_pool); mapping_destroy(esw->offloads.reg_c0_obj_pool);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment