[PATCH] iio: addac: ad74115: Add missing check for device_property_read_u32_array

Chen Ni posted 1 patch 1 week, 4 days ago
drivers/iio/addac/ad74115.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
[PATCH] iio: addac: ad74115: Add missing check for device_property_read_u32_array
Posted by Chen Ni 1 week, 4 days ago
Add check for the return value of device_property_read_u32_array() and
return the error if it fails in order to catch the error.

Signed-off-by: Chen Ni <nichen@iscas.ac.cn>
---
 drivers/iio/addac/ad74115.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/iio/addac/ad74115.c b/drivers/iio/addac/ad74115.c
index f8b04d86b01f..d0d6c0575ff1 100644
--- a/drivers/iio/addac/ad74115.c
+++ b/drivers/iio/addac/ad74115.c
@@ -1515,8 +1515,12 @@ static int ad74115_setup_adc_conv2_range(struct ad74115_state *st)
 	};
 	struct device *dev = &st->spi->dev;
 	unsigned int i;
+	int ret;
 
-	device_property_read_u32_array(dev, prop_name, vals, 2);
+	ret = device_property_read_u32_array(dev, prop_name, vals, 2);
+	if (ret)
+		return dev_err_probe(dev, ret, "Failed to read %s prop\n",
+				     prop_name);
 
 	for (i = 0; i < tbl_len; i++)
 		if (vals[0] == ad74115_adc_range_tbl[i][0] &&
-- 
2.25.1
Re: [PATCH] iio: addac: ad74115: Add missing check for device_property_read_u32_array
Posted by Nuno Sá 1 week, 3 days ago
On Wed, 2026-01-28 at 12:30 +0800, Chen Ni wrote:
> Add check for the return value of device_property_read_u32_array() and
> return the error if it fails in order to catch the error.
> 
> Signed-off-by: Chen Ni <nichen@iscas.ac.cn>
> ---
>  drivers/iio/addac/ad74115.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/iio/addac/ad74115.c b/drivers/iio/addac/ad74115.c
> index f8b04d86b01f..d0d6c0575ff1 100644
> --- a/drivers/iio/addac/ad74115.c
> +++ b/drivers/iio/addac/ad74115.c
> @@ -1515,8 +1515,12 @@ static int ad74115_setup_adc_conv2_range(struct ad74115_state *st)
>  	};
>  	struct device *dev = &st->spi->dev;
>  	unsigned int i;
> +	int ret;
>  
> -	device_property_read_u32_array(dev, prop_name, vals, 2);
> +	ret = device_property_read_u32_array(dev, prop_name, vals, 2);
> +	if (ret)
> +		return dev_err_probe(dev, ret, "Failed to read %s prop\n",
> +				     prop_name);

Thanks for the patch but this is intentional. Not a mandatory property. If you want, you could
do

if (ret && ret != -EINVAL)
	return dev_err_probe()

Not 100% sure if that is the proper error code but the goal is to only error out in case the
property __is__ present but wrong. However we are kind of relaxed with the above in IIO.

- Nuno Sá
> 
Re: [PATCH] iio: addac: ad74115: Add missing check for device_property_read_u32_array
Posted by Andy Shevchenko 1 week, 3 days ago
On Wed, Jan 28, 2026 at 09:34:18AM +0000, Nuno Sá wrote:
> On Wed, 2026-01-28 at 12:30 +0800, Chen Ni wrote:
> > Add check for the return value of device_property_read_u32_array() and
> > return the error if it fails in order to catch the error.

...

> > -	device_property_read_u32_array(dev, prop_name, vals, 2);
> > +	ret = device_property_read_u32_array(dev, prop_name, vals, 2);
> > +	if (ret)
> > +		return dev_err_probe(dev, ret, "Failed to read %s prop\n",
> > +				     prop_name);
> 
> Thanks for the patch but this is intentional. Not a mandatory property.

No need for further actions. NAK to the change. We don't want to have a monster
with the custom error checking.

P.S. The author also must answer if this was found by some static analyser
tool. If so, the stream from this "tool" should be blocked for now.

-- 
With Best Regards,
Andy Shevchenko