Re: [PATCH V2 2/2] iio: meter: ade7759: add error handling in _reset and _stop_device

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 02/01/15 09:02, Devendra Naga wrote:
> This patch adds the error handling for the value returned from
> ade7759_spi_read_reg_16. With this patch, the following randconfig
> warnings get fixed automatically.
> 
> drivers/staging/iio/meter/ade7759.c:224:6: warning: ‘val’ may be
> used uninitialized in this function [-Wmaybe-uninitialized]
> drivers/staging/iio/meter/ade7759.c:309:6: warning: ‘val’ may be
> used uninitialized in this function [-Wmaybe-uninitialized]
> 
> Signed-off-by: Devendra Naga <devendra.aaru@xxxxxxxxx>
applied to the togreg branch of iio.git - initially pushed out
as testing to let  the autobuilders play with it.

Again, this is now 3.21 material...
> ---
>  Hello, 
> 
>  Please see if this is the error message you wanted.
> 
>  Build tested on next-20141231 with randconfig sent to iio ml,
>  and with allmodconfig.
> 
>  drivers/staging/iio/meter/ade7759.c | 14 ++++++++++++--
>  1 file changed, 12 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/staging/iio/meter/ade7759.c b/drivers/staging/iio/meter/ade7759.c
> index 7d21743..86b5145 100644
> --- a/drivers/staging/iio/meter/ade7759.c
> +++ b/drivers/staging/iio/meter/ade7759.c
> @@ -218,9 +218,12 @@ static int ade7759_reset(struct device *dev)
>  	int ret;
>  	u16 val;
>  
> -	ade7759_spi_read_reg_16(dev,
> +	ret = ade7759_spi_read_reg_16(dev,
>  			ADE7759_MODE,
>  			&val);
> +	if (ret < 0)
> +		return ret;
> +
>  	val |= 1 << 6; /* Software Chip Reset */
>  	ret = ade7759_spi_write_reg_16(dev,
>  			ADE7759_MODE,
> @@ -301,11 +304,18 @@ error_ret:
>  /* Power down the device */
>  static int ade7759_stop_device(struct device *dev)
>  {
> +	int ret;
>  	u16 val;
>  
> -	ade7759_spi_read_reg_16(dev,
> +	ret = ade7759_spi_read_reg_16(dev,
>  			ADE7759_MODE,
>  			&val);
> +	if (ret < 0) {
> +		dev_err(dev, "unable to power down the device, error: %d\n",
> +			ret);
> +		return ret;
> +	}
> +
>  	val |= 1 << 4;  /* AD converters can be turned off */
>  
>  	return ade7759_spi_write_reg_16(dev, ADE7759_MODE, val);
> 

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel





[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux