Subject: [net-next v0 12/15] net/mlx5: E-switch, Reuse mlx5_eswitch_set_vport_mac

From: Saeed Mahameed <[email-masked]>
Date: Tue, 16 Nov 2021 20:33:54 -0800

From: Parav Pandit <[email-masked]>

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 <[email-masked]>
Reviewed-by: Mark Bloch <[email-masked]>
Signed-off-by: Saeed Mahameed <[email-masked]>
---
 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c | 12 +-----------
 1 file changed, 1 insertion(+), 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,
-- 
2.31.1