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

From: Jonathan Cameron
Date: Tue Jul 05 2016 - 16:03:02 EST


On 04/07/16 13:20, Martin Kepplinger wrote:
> 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>
Applied, thanks.

Jonathan
>
>> ---
>> 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;
>>
>>