Re: [PATCH] [net] net/mlx5e: fix another -Wmaybe-uninitialized warning

From: Arnd Bergmann
Date: Thu Jan 12 2017 - 05:10:53 EST


On Thursday, January 12, 2017 10:30:24 AM CET Or Gerlitz wrote:
> On 1/11/2017 11:14 PM, Arnd Bergmann wrote:
> > @@ -666,14 +666,15 @@ static int mlx5e_route_lookup_ipv4(struct mlx5e_priv *priv,
> > struct rtable *rt;
> > struct neighbour *n = NULL;
> > int ttl;
> > + int ret;
> > +
> > + if (!IS_ENABLED(CONFIG_INET))
> > + return -EOPNOTSUPP;
> >
> > -#if IS_ENABLED(CONFIG_INET)
> > rt = ip_route_output_key(dev_net(mirred_dev), fl4);
> > - if (IS_ERR(rt))
> > - return PTR_ERR(rt);
> > -#else
> > - return -EOPNOTSUPP;
> > -#endif
> > + ret = PTR_ERR_OR_ZERO(rt);
> > + if (ret)
> > + return ret;
>
> but this means that if we got NULL from ip_route_output_key, we will
> return success (0) here which is wrong.

I don't think so: if 'rt' is NULL or a valid pointer, then 'ret' is zero
and we will not return here.

Arnd