net/mlx5: DR, Fix uninitialized var warning
authorYueHaibing <yuehaibing@huawei.com>
Thu, 10 Nov 2022 13:47:07 +0000 (21:47 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Dec 2022 10:28:40 +0000 (11:28 +0100)
[ Upstream commit 52f7cf70eb8fac6111786c59ae9dfc5cf2bee710 ]

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 <yuehaibing@huawei.com>
Reviewed-by: Roi Dayan <roid@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c

index 4c40178..0c7b57b 100644 (file)
@@ -9,7 +9,7 @@ int mlx5dr_table_set_miss_action(struct mlx5dr_table *tbl,
        struct mlx5dr_matcher *last_matcher = NULL;
        struct mlx5dr_htbl_connect_info info;
        struct mlx5dr_ste_htbl *last_htbl;
-       int ret;
+       int ret = -EOPNOTSUPP;
 
        if (action && action->action_type != DR_ACTION_TYP_FT)
                return -EOPNOTSUPP;
@@ -68,6 +68,9 @@ int mlx5dr_table_set_miss_action(struct mlx5dr_table *tbl,
                }
        }
 
+       if (ret)
+               goto out;
+
        /* Release old action */
        if (tbl->miss_action)
                refcount_dec(&tbl->miss_action->refcount);