Message ID | 20221110134707.43740-1-yuehaibing@huawei.com (mailing list archive) |
---|---|
State | Awaiting Upstream |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [v2] net/mlx5: DR, Fix uninitialized var warning | expand |
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 <yuehaibing@huawei.com> > --- > 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 <roid@nvidia.com>
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!
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);
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> --- v2: init ret to -EOPNOTSUPP --- drivers/net/ethernet/mellanox/mlx5/core/steering/dr_table.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)