Re: [PATCH] iio: adc: meson-saradc: add NULL check on of_match_device() return value

From: Jonathan Cameron
Date: Sun Jul 09 2017 - 14:09:23 EST


On Sat, 8 Jul 2017 15:42:46 +0200
Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx> wrote:

> On Fri, Jul 7, 2017 at 8:46 AM, Gustavo A. R. Silva
> <garsilva@xxxxxxxxxxxxxx> wrote:
> > Check return value from call to of_match_device()
> > in order to prevent a NULL pointer dereference.
> >
> > In case of NULL print error message and return -ENODEV
> >
> > Signed-off-by: Gustavo A. R. Silva <garsilva@xxxxxxxxxxxxxx>
> thanks for finding this. a crash here is a rather theoretical problem
> (since all compatible strings have their corresponding match data) -
> but it doesn't hurt either, so:
>
> Acked-by: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>
Applied.

Jonathan
>
>
> > ---
> > drivers/iio/adc/meson_saradc.c | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git a/drivers/iio/adc/meson_saradc.c b/drivers/iio/adc/meson_saradc.c
> > index 83da50e..07dbcc3 100644
> > --- a/drivers/iio/adc/meson_saradc.c
> > +++ b/drivers/iio/adc/meson_saradc.c
> > @@ -915,6 +915,11 @@ static int meson_sar_adc_probe(struct platform_device *pdev)
> > init_completion(&priv->done);
> >
> > match = of_match_device(meson_sar_adc_of_match, &pdev->dev);
> > + if (!match) {
> > + dev_err(&pdev->dev, "failed to match device\n");
> > + return -ENODEV;
> > + }
> > +
> > priv->data = match->data;
> >
> > indio_dev->name = priv->data->name;
> > --
> > 2.5.0
> >
> >
> > _______________________________________________
> > linux-amlogic mailing list
> > linux-amlogic@xxxxxxxxxxxxxxxxxxx
> > http://lists.infradead.org/mailman/listinfo/linux-amlogic
> --
> To unsubscribe from this list: send the line "unsubscribe linux-iio" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html