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
State Superseded
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");