aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/mellanox/mlx5
diff options
context:
space:
mode:
authorParav Pandit <parav@nvidia.com>2021-10-21 18:17:52 +0300
committerSaeed Mahameed <saeedm@nvidia.com>2021-11-16 20:31:51 -0800
commitb22fd4381d15ae66e42a7fab6eedfbb72d714ebb (patch)
treef6e81c172dc2a5000b6d6977e958351bf42a737b /drivers/net/ethernet/mellanox/mlx5
parentnet/mlx5: E-switch, Remove vport enabled check (diff)
downloadlinux-dev-b22fd4381d15ae66e42a7fab6eedfbb72d714ebb.tar.xz
linux-dev-b22fd4381d15ae66e42a7fab6eedfbb72d714ebb.zip
net/mlx5: E-switch, Reuse mlx5_eswitch_set_vport_mac
mlx5_eswitch_set_vport_mac() routine already does necessary checks which are duplicated in implementation of mlx5_devlink_port_function_hw_addr_set(). Hence, reuse mlx5_eswitch_set_vport_mac() and cut down the code. Signed-off-by: Parav Pandit <parav@nvidia.com> Reviewed-by: Mark Bloch <mbloch@nvidia.com> Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5')
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/eswitch.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
index b039f8b07d31..c0526fc27ad6 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
@@ -1732,9 +1732,7 @@ int mlx5_devlink_port_function_hw_addr_set(struct devlink_port *port,
struct netlink_ext_ack *extack)
{
struct mlx5_eswitch *esw;
- struct mlx5_vport *vport;
u16 vport_num;
- int err;
esw = mlx5_devlink_eswitch_get(port->devlink);
if (IS_ERR(esw)) {
@@ -1747,16 +1745,8 @@ int mlx5_devlink_port_function_hw_addr_set(struct devlink_port *port,
NL_SET_ERR_MSG_MOD(extack, "Port doesn't support set hw_addr");
return -EINVAL;
}
- vport = mlx5_eswitch_get_vport(esw, vport_num);
- if (IS_ERR(vport)) {
- NL_SET_ERR_MSG_MOD(extack, "Invalid port");
- return PTR_ERR(vport);
- }
- mutex_lock(&esw->state_lock);
- err = mlx5_esw_set_vport_mac_locked(esw, vport, hw_addr);
- mutex_unlock(&esw->state_lock);
- return err;
+ return mlx5_eswitch_set_vport_mac(esw, vport_num, hw_addr);
}
int mlx5_eswitch_set_vport_state(struct mlx5_eswitch *esw,