2022-11-10 14:34:30

by Yue Haibing

[permalink] [raw]
Subject: [PATCH v2] net/mlx5: DR, Fix uninitialized var warning

Smatch warns this:

drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c:81
mlx5dr_table_set_miss_action() error: uninitialized symbol 'ret'.

Initializing ret with -EOPNOTSUPP and fix missing action case.

Fixes: 7838e1725394 ("net/mlx5: DR, Expose steering table functionality")
Signed-off-by: YueHaibing <[email protected]>
---
v2: init ret to -EOPNOTSUPP
---
drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c b/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c
index eb81759244d5..7cc4cb7fa392 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c
@@ -46,7 +46,7 @@ static int dr_table_set_miss_action_nic(struct mlx5dr_domain *dmn,
int mlx5dr_table_set_miss_action(struct mlx5dr_table *tbl,
struct mlx5dr_action *action)
{
- int ret;
+ int ret = -EOPNOTSUPP;

if (action && action->action_type != DR_ACTION_TYP_FT)
return -EOPNOTSUPP;
@@ -67,6 +67,9 @@ int mlx5dr_table_set_miss_action(struct mlx5dr_table *tbl,
goto out;
}

+ if (ret)
+ goto out;
+
/* Release old action */
if (tbl->miss_action)
refcount_dec(&tbl->miss_action->refcount);
--
2.17.1



2022-11-10 15:27:27

by Roi Dayan

[permalink] [raw]
Subject: Re: [PATCH v2] net/mlx5: DR, Fix uninitialized var warning



On 10/11/2022 15:47, YueHaibing wrote:
> Smatch warns this:
>
> drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c:81
> mlx5dr_table_set_miss_action() error: uninitialized symbol 'ret'.
>
> Initializing ret with -EOPNOTSUPP and fix missing action case.
>
> Fixes: 7838e1725394 ("net/mlx5: DR, Expose steering table functionality")
> Signed-off-by: YueHaibing <[email protected]>
> ---
> v2: init ret to -EOPNOTSUPP
> ---
> drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c b/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c
> index eb81759244d5..7cc4cb7fa392 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c
> @@ -46,7 +46,7 @@ static int dr_table_set_miss_action_nic(struct mlx5dr_domain *dmn,
> int mlx5dr_table_set_miss_action(struct mlx5dr_table *tbl,
> struct mlx5dr_action *action)
> {
> - int ret;
> + int ret = -EOPNOTSUPP;
>
> if (action && action->action_type != DR_ACTION_TYP_FT)
> return -EOPNOTSUPP;
> @@ -67,6 +67,9 @@ int mlx5dr_table_set_miss_action(struct mlx5dr_table *tbl,
> goto out;
> }
>
> + if (ret)
> + goto out;
> +
> /* Release old action */
> if (tbl->miss_action)
> refcount_dec(&tbl->miss_action->refcount);

thanks

Reviewed-by: Roi Dayan <[email protected]>

2022-11-11 23:07:59

by Saeed Mahameed

[permalink] [raw]
Subject: Re: [PATCH v2] net/mlx5: DR, Fix uninitialized var warning

On 10 Nov 21:47, YueHaibing wrote:
>Smatch warns this:
>
>drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c:81
> mlx5dr_table_set_miss_action() error: uninitialized symbol 'ret'.
>
>Initializing ret with -EOPNOTSUPP and fix missing action case.
>
>Fixes: 7838e1725394 ("net/mlx5: DR, Expose steering table functionality")

applied to net-mlx5,
Thanks!