drivers/iio/addac/ad74115.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
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
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á >
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
© 2016 - 2026 Red Hat, Inc.