net/mlx4_core: Fix return codes of unsupported operations
authorErez Alfasi <ereza@mellanox.com>
Sun, 2 Dec 2018 15:40:25 +0000 (17:40 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 4 Dec 2018 00:34:31 +0000 (16:34 -0800)
Functions __set_port_type and mlx4_check_port_params returned
-EINVAL while the proper return code is -EOPNOTSUPP as a
result of an unsupported operation. All drivers should generate
this and all users should check for it when detecting an
unsupported functionality.

Signed-off-by: Erez Alfasi <ereza@mellanox.com>
Signed-off-by: Tariq Toukan <tariqt@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlx4/main.c

index 6a046030e8734a8542ff8ea67560f980d9ffb26c..4afe56a6eedfbedc09c5b1826692a0184369a726 100644 (file)
@@ -313,7 +313,7 @@ int mlx4_check_port_params(struct mlx4_dev *dev,
                for (i = 0; i < dev->caps.num_ports - 1; i++) {
                        if (port_type[i] != port_type[i + 1]) {
                                mlx4_err(dev, "Only same port types supported on this HCA, aborting\n");
-                               return -EINVAL;
+                               return -EOPNOTSUPP;
                        }
                }
        }
@@ -322,7 +322,7 @@ int mlx4_check_port_params(struct mlx4_dev *dev,
                if (!(port_type[i] & dev->caps.supported_type[i+1])) {
                        mlx4_err(dev, "Requested port type for port %d is not supported on this HCA\n",
                                 i + 1);
-                       return -EINVAL;
+                       return -EOPNOTSUPP;
                }
        }
        return 0;
@@ -1188,8 +1188,7 @@ static int __set_port_type(struct mlx4_port_info *info,
                mlx4_err(mdev,
                         "Requested port type for port %d is not supported on this HCA\n",
                         info->port);
-               err = -EINVAL;
-               goto err_sup;
+               return -EOPNOTSUPP;
        }
 
        mlx4_stop_sense(mdev);
@@ -1211,7 +1210,7 @@ static int __set_port_type(struct mlx4_port_info *info,
                for (i = 1; i <= mdev->caps.num_ports; i++) {
                        if (mdev->caps.possible_type[i] == MLX4_PORT_TYPE_AUTO) {
                                mdev->caps.possible_type[i] = mdev->caps.port_type[i];
-                               err = -EINVAL;
+                               err = -EOPNOTSUPP;
                        }
                }
        }
@@ -1237,7 +1236,7 @@ static int __set_port_type(struct mlx4_port_info *info,
 out:
        mlx4_start_sense(mdev);
        mutex_unlock(&priv->port_mutex);
-err_sup:
+
        return err;
 }