Re: [PATCH] net/mlx5: Fix missing error code in mlx5_devlink_eswitch_inline_mode_set()

From: Leon Romanovsky
Date: Sun Jul 18 2021 - 05:34:01 EST


On Fri, Jul 16, 2021 at 06:52:08PM +0800, Jiapeng Chong wrote:
> The error code is missing in this code scenario, add the error code
> '-EINVAL' to the return value 'err'.
>
> Eliminate the follow smatch warning:
>
> vers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c:3083
> mlx5_devlink_eswitch_inline_mode_set() warn: missing error code 'err'.
>
> Reported-by: Abaci Robot <abaci@xxxxxxxxxxxxxxxxx>
> Signed-off-by: Jiapeng Chong <jiapeng.chong@xxxxxxxxxxxxxxxxx>
> ---
> drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
> index 7579f34..b38b6c1 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
> @@ -3079,8 +3079,10 @@ int mlx5_devlink_eswitch_inline_mode_set(struct devlink *devlink, u8 mode,
>
> switch (MLX5_CAP_ETH(dev, wqe_inline_mode)) {
> case MLX5_CAP_INLINE_MODE_NOT_REQUIRED:
> - if (mode == DEVLINK_ESWITCH_INLINE_MODE_NONE)
> + if (mode == DEVLINK_ESWITCH_INLINE_MODE_NONE) {
> + err = -EINVAL;

This change is wrong, it should be err = 0;
and please add Fixes line.
Fixes: 8e0aa4bc959c ("net/mlx5: E-switch, Protect eswitch mode changes")

> goto out;
> + }
> fallthrough;
> case MLX5_CAP_INLINE_MODE_L2:
> NL_SET_ERR_MSG_MOD(extack, "Inline mode can't be set");
> --
> 1.8.3.1
>