Re: [PATCH net] net/mlx5: DR, Fix uninitialized var warning

From: YueHaibing
Date: Thu Nov 10 2022 - 06:06:31 EST


On 2022/11/10 16:20, Roi Dayan wrote:
>
>
> On 08/11/2022 3:53, 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'.
>>
>> Fix this by initializing ret with zero.
>>
>> Fixes: 7838e1725394 ("net/mlx5: DR, Expose steering table functionality")
>> Signed-off-by: YueHaibing <yuehaibing@xxxxxxxxxx>
>> ---
>> drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c | 2 +-
>> 1 file changed, 1 insertion(+), 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 31d443dd8386..44dea75dabde 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 = 0;
>>
>> if (action && action->action_type != DR_ACTION_TYP_FT)
>> return -EOPNOTSUPP;
>
>
> In this case the default should be an error
> It will be better if ret init to -EOPNOTSUPP and if
> a miss action was not set and replaces ret then goto out.

Thanks for your review, will do that in v2.

>
> 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;
> +
>
> .
>