diff mbox series

net/mlx5: Fix missing error code in mlx5_devlink_eswitch_inline_mode_set()

Message ID 1626432728-118051-1-git-send-email-jiapeng.chong@linux.alibaba.com (mailing list archive)
State Not Applicable
Headers show
Series net/mlx5: Fix missing error code in mlx5_devlink_eswitch_inline_mode_set() | expand

Commit Message

Jiapeng Chong July 16, 2021, 10:52 a.m. UTC
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@linux.alibaba.com>
Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com>
---
 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Leon Romanovsky July 18, 2021, 9:33 a.m. UTC | #1
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@linux.alibaba.com>
> Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com>
> ---
>  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
>
diff mbox series

Patch

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;
 			goto out;
+		}
 		fallthrough;
 	case MLX5_CAP_INLINE_MODE_L2:
 		NL_SET_ERR_MSG_MOD(extack, "Inline mode can't be set");