On Thu, 2019-09-19 at 10:50 -0500, Navid Emamdoost wrote: > In adis_update_scan_mode, if allocation for adis->buffer fails, > previously allocated adis->xfer needs to be released. > > v2: added adis->xfer = NULL to avoid any potential double free.
Reviewed-by: Alexandru Ardelean <alexandru.ardel...@analog.com> > Signed-off-by: Navid Emamdoost <navid.emamdo...@gmail.com> > --- > drivers/iio/imu/adis_buffer.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/iio/imu/adis_buffer.c > b/drivers/iio/imu/adis_buffer.c > index 9ac8356d9a95..f446ff497809 100644 > --- a/drivers/iio/imu/adis_buffer.c > +++ b/drivers/iio/imu/adis_buffer.c > @@ -78,8 +78,11 @@ int adis_update_scan_mode(struct iio_dev *indio_dev, > return -ENOMEM; > > adis->buffer = kcalloc(indio_dev->scan_bytes, 2, GFP_KERNEL); > - if (!adis->buffer) > + if (!adis->buffer) { > + kfree(adis->xfer); > + adis->xfer = NULL; > return -ENOMEM; > + } > > rx = adis->buffer; > tx = rx + scan_count;