Re: [PATCH net-next] mlx5: Restore err assignment in mlx5_mdev_init
From: Leon Romanovsky
Date: Tue Jun 02 2020 - 03:07:37 EST
On Mon, Jun 01, 2020 at 09:07:48PM -0700, Nathan Chancellor wrote:
> On Sun, May 31, 2020 at 12:58:10PM +0300, Leon Romanovsky wrote:
> > On Fri, May 29, 2020 at 10:54:48PM -0700, Nathan Chancellor wrote:
> > > Clang warns:
> > >
> > > drivers/net/ethernet/mellanox/mlx5/core/main.c:1278:6: warning: variable
> > > 'err' is used uninitialized whenever 'if' condition is true
> > > [-Wsometimes-uninitialized]
> > > if (!priv->dbg_root) {
> > > ^~~~~~~~~~~~~~~
> > > drivers/net/ethernet/mellanox/mlx5/core/main.c:1303:9: note:
> > > uninitialized use occurs here
> > > return err;
> > > ^~~
> > > drivers/net/ethernet/mellanox/mlx5/core/main.c:1278:2: note: remove the
> > > 'if' if its condition is always false
> > > if (!priv->dbg_root) {
> > > ^~~~~~~~~~~~~~~~~~~~~~
> > > drivers/net/ethernet/mellanox/mlx5/core/main.c:1259:9: note: initialize
> > > the variable 'err' to silence this warning
> > > int err;
> > > ^
> > > = 0
> > > 1 warning generated.
> > >
> > > This path previously returned -ENOMEM, restore that error code so that
> > > it is not uninitialized.
> > >
> > > Fixes: 810cbb25549b ("net/mlx5: Add missing mutex destroy")
> > > Link: https://github.com/ClangBuiltLinux/linux/issues/1042
> > > Signed-off-by: Nathan Chancellor <natechancellor@xxxxxxxxx>
> > > ---
> > > drivers/net/ethernet/mellanox/mlx5/core/main.c | 1 +
> > > 1 file changed, 1 insertion(+)
> > >
> > > diff --git a/drivers/net/ethernet/mellanox/mlx5/core/main.c b/drivers/net/ethernet/mellanox/mlx5/core/main.c
> > > index df46b1fce3a7..ac68445fde2d 100644
> > > --- a/drivers/net/ethernet/mellanox/mlx5/core/main.c
> > > +++ b/drivers/net/ethernet/mellanox/mlx5/core/main.c
> > > @@ -1277,6 +1277,7 @@ static int mlx5_mdev_init(struct mlx5_core_dev *dev, int profile_idx)
> > > mlx5_debugfs_root);
> > > if (!priv->dbg_root) {
> > > dev_err(dev->device, "mlx5_core: error, Cannot create debugfs dir, aborting\n");
> > > + err = -ENOMEM;
> > > goto err_dbg_root;
> > ^^^^^^^^^^^^^^^^^^ this is wrong.
> > Failure to create debugfs should never fail the driver.
>
> Fair enough, could you guys deal with this then to make sure it gets
> fixed properly? It appears to be introduced in 11f3b84d7068 ("net/mlx5:
> Split mdev init and pci init").
Thanks, I will send it today.
>
> > > }
> > >
> > >
> > > base-commit: c0cc73b79123e67b212bd537a7af88e52c9fbeac
> > > --
> > > 2.27.0.rc0
> > >