Re: [PATCH] iio: accel: fxls8962af: Initialize return value

From: Sean Nyekjaer
Date: Fri Jul 09 2021 - 10:35:26 EST


On Fri, Jul 09, 2021 at 07:50:48PM +0530, Souptick Joarder wrote:
> On Fri, 9 Jul, 2021, 9:06 am Fabio Estevam, <festevam@xxxxxxxxx> wrote:
>
> > Hi Souptick,
> >
> > On Fri, Jul 9, 2021 at 12:17 AM Souptick Joarder <jrdr.linux@xxxxxxxxx>
> > wrote:
> > >
> > > kernel test robot throws below warning ->
> > >
> > > smatch warnings:
> > > drivers/iio/accel/fxls8962af-core.c:640
> > > fxls8962af_i2c_raw_read_errata3() error: uninitialized symbol 'ret'.
> > >
> > > Initialize it.
> > >
> > > Reported-by: kernel test robot <lkp@xxxxxxxxx>
> > > Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
> > > Signed-off-by: Souptick Joarder <jrdr.linux@xxxxxxxxx>
> > > ---
> > > drivers/iio/accel/fxls8962af-core.c | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/iio/accel/fxls8962af-core.c
> > b/drivers/iio/accel/fxls8962af-core.c
> > > index 078d87865fde..8af1c8f58e83 100644
> > > --- a/drivers/iio/accel/fxls8962af-core.c
> > > +++ b/drivers/iio/accel/fxls8962af-core.c
> > > @@ -628,7 +628,7 @@ static int fxls8962af_i2c_raw_read_errata3(struct
> > fxls8962af_data *data,
> > > u16 *buffer, int samples,
> > > int sample_length)
> > > {
> > > - int i, ret;
> > > + int i, ret = -EINVAL;
> > >
> > > for (i = 0; i < samples; i++) {
> > > ret = regmap_raw_read(data->regmap, FXLS8962AF_BUF_X_LSB,
> >
> > Would the change below work?
> >
>
> This function returns -ERRNO when failed. If it is not entering loop,
> ideally it should return -ERRNO, not 0. No ?

samples can't be 0, as fxls8962af_fifo_transfer() is never called if
samples are 0 :)

>
> >
> > --- a/drivers/iio/accel/fxls8962af-core.c
> > +++ b/drivers/iio/accel/fxls8962af-core.c
> > @@ -637,7 +637,7 @@ static int fxls8962af_i2c_raw_read_errata3(struct
> > fxls8962af_data *data,
> > return ret;
> > }
> >
> > - return ret;
> > + return 0;
> > }
> >