diff mbox series

[09/10] iio: imu: adis: assign read val in debugfs hook only if op successful

Message ID 20191101093505.9408-10-alexandru.ardelean@analog.com (mailing list archive)
State New, archived
Headers show
Series iio: adis: cleanups and fixes | expand

Commit Message

Alexandru Ardelean Nov. 1, 2019, 9:35 a.m. UTC
This was also caught by the `-Wmaybe-uninitialized` warning, which
(ironically as-is) it makes quite a lot of sense to do for this.

Fixes: 78026a6fde8f7 ("iio:imu:adis: Add debugfs register access support")
Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
---
 drivers/iio/imu/adis.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Jonathan Cameron Nov. 3, 2019, 10:46 a.m. UTC | #1
On Fri, 1 Nov 2019 11:35:04 +0200
Alexandru Ardelean <alexandru.ardelean@analog.com> wrote:

> This was also caught by the `-Wmaybe-uninitialized` warning, which
> (ironically as-is) it makes quite a lot of sense to do for this.
> 
> Fixes: 78026a6fde8f7 ("iio:imu:adis: Add debugfs register access support")
> Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
This one is protected against any actual results in the caller of the
function, so I've added a not again to say this is not stable material.

Need to do this explicitly to avoid it getting picked up in efforts
to catch fixes that should have been tagged.

Thanks,

Jonathan

> ---
>  drivers/iio/imu/adis.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/iio/imu/adis.c b/drivers/iio/imu/adis.c
> index dc2f9e061d98..85de565a4e80 100644
> --- a/drivers/iio/imu/adis.c
> +++ b/drivers/iio/imu/adis.c
> @@ -229,7 +229,8 @@ int adis_debugfs_reg_access(struct iio_dev *indio_dev,
>  		int ret;
>  
>  		ret = adis_read_reg_16(adis, reg, &val16);
> -		*readval = val16;
> +		if (ret == 0)
> +			*readval = val16;
>  
>  		return ret;
>  	} else {
diff mbox series

Patch

diff --git a/drivers/iio/imu/adis.c b/drivers/iio/imu/adis.c
index dc2f9e061d98..85de565a4e80 100644
--- a/drivers/iio/imu/adis.c
+++ b/drivers/iio/imu/adis.c
@@ -229,7 +229,8 @@  int adis_debugfs_reg_access(struct iio_dev *indio_dev,
 		int ret;
 
 		ret = adis_read_reg_16(adis, reg, &val16);
-		*readval = val16;
+		if (ret == 0)
+			*readval = val16;
 
 		return ret;
 	} else {