Re: [PATCH v1] drivers:iio:accel:mma8452: added cleanup provision in case of failure.

From: Martin Kepplinger
Date: Mon Jul 04 2016 - 08:20:56 EST


Am 2016-07-04 um 12:08 schrieb Bijosh Thykkoottathil:
> mma8452_set_freefall_mode can return -ve value in case if
> i2c_smbus_read_byte_data fails. This function is called from mma8452_probe,
> and returning -ve value from probe indicates probe failure. Need to call
> iio_triggered_buffer_cleanup & iio_trigger_cleanup in this case.

Thanks for your review, nice catch! Looks good to me. You just could
have said "Don't leak allocated buffer on error during probe().", but oh
well :)

>
> Signed-off-by: Bijosh Thykkoottathil <bijosh.t@xxxxxxxxxxx>
Reviewed-by: Martin Kepplinger <martink@xxxxxxxxx>

> ---
> drivers/iio/accel/mma8452.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/iio/accel/mma8452.c b/drivers/iio/accel/mma8452.c
> index e225d3c..1bcf5c3 100644
> --- a/drivers/iio/accel/mma8452.c
> +++ b/drivers/iio/accel/mma8452.c
> @@ -1444,8 +1444,8 @@ static int mma8452_probe(struct i2c_client *client,
> goto buffer_cleanup;
>
> ret = mma8452_set_freefall_mode(data, false);
> - if (ret)
> - return ret;
> + if (ret < 0)
> + goto buffer_cleanup;
>
> return 0;
>
>