[PATCH 2/7] Staging: iio: adt7316: Add an extra check for 'ret' equals to 0

Jonathan Cameron jic23 at kernel.org
Sat Nov 17 17:00:23 UTC 2018


On Sat, 17 Nov 2018 04:21:32 +0530
Shreeya Patel <shreeya.patel23498 at gmail.com> wrote:

> ret = 0 indicates a case of no error but no data read from
> the bus which is an invalid case. This case doesn't ever happen
> in reality. It should perhaps be handled for correctness though.
> 
> Signed-off-by: Shreeya Patel <shreeya.patel23498 at gmail.com>
Applied to the togreg branch of iio.git and pushed out as testing
for the autobuilders to play with it.

Thanks,

Jonathan

> ---
>  drivers/staging/iio/addac/adt7316-i2c.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/staging/iio/addac/adt7316-i2c.c b/drivers/staging/iio/addac/adt7316-i2c.c
> index 856bcfa60c6c..473e5e34ec00 100644
> --- a/drivers/staging/iio/addac/adt7316-i2c.c
> +++ b/drivers/staging/iio/addac/adt7316-i2c.c
> @@ -30,6 +30,10 @@ static int adt7316_i2c_read(void *client, u8 reg, u8 *data)
>  	}
>  
>  	ret = i2c_smbus_read_byte(client);
> +
> +	if (!ret)
> +		return -EIO;
> +
>  	if (ret < 0) {
>  		dev_err(&cl->dev, "I2C read error\n");
>  		return ret;



More information about the devel mailing list