]> git.dujemihanovic.xyz Git - linux.git/commitdiff
net/mlx5e: Add a check for the return value from mlx5_port_set_eth_ptys
authorShahar Shitrit <shshitrit@nvidia.com>
Tue, 30 Jul 2024 06:16:37 +0000 (09:16 +0300)
committerJakub Kicinski <kuba@kernel.org>
Thu, 1 Aug 2024 01:04:51 +0000 (18:04 -0700)
Since the documentation for mlx5_toggle_port_link states that it should
only be used after setting the port register, we add a check for the
return value from mlx5_port_set_eth_ptys to ensure the register was
successfully set before calling it.

Fixes: 667daedaecd1 ("net/mlx5e: Toggle link only after modifying port parameters")
Signed-off-by: Shahar Shitrit <shshitrit@nvidia.com>
Reviewed-by: Carolina Jubran <cjubran@nvidia.com>
Signed-off-by: Tariq Toukan <tariqt@nvidia.com>
Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com>
Link: https://patch.msgid.link/20240730061638.1831002-9-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c

index 00d5661dc62e1a60388ce7077fa44e9ce5481678..36845872ae94e7e01e325546b9b6b192c99e3f0d 100644 (file)
@@ -1409,7 +1409,12 @@ static int mlx5e_ethtool_set_link_ksettings(struct mlx5e_priv *priv,
        if (!an_changes && link_modes == eproto.admin)
                goto out;
 
-       mlx5_port_set_eth_ptys(mdev, an_disable, link_modes, ext);
+       err = mlx5_port_set_eth_ptys(mdev, an_disable, link_modes, ext);
+       if (err) {
+               netdev_err(priv->netdev, "%s: failed to set ptys reg: %d\n", __func__, err);
+               goto out;
+       }
+
        mlx5_toggle_port_link(mdev);
 
 out: