Re: [PATCH] gpio: 74xx: fix a possible NULL dereference

From: Alexandre Courbot
Date: Sun Nov 08 2015 - 19:22:14 EST


On Fri, Nov 6, 2015 at 12:55 AM, LABBE Corentin
<clabbe.montjoie@xxxxxxxxx> wrote:
> of_match_device could return NULL, and so cause a NULL pointer
> dereference later at line 132:
> priv->flags = (uintptr_t) of_id->data;
>
> Reported-by: coverity (CID 1324141)
> Signed-off-by: LABBE Corentin <clabbe.montjoie@xxxxxxxxx>
> ---
> drivers/gpio/gpio-74xx-mmio.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpio/gpio-74xx-mmio.c b/drivers/gpio/gpio-74xx-mmio.c
> index 6ed7c0f..4a7be0f 100644
> --- a/drivers/gpio/gpio-74xx-mmio.c
> +++ b/drivers/gpio/gpio-74xx-mmio.c
> @@ -120,6 +120,9 @@ static int mmio_74xx_gpio_probe(struct platform_device *pdev)
> void __iomem *dat;
> int err;
>
> + if (!of_id)
> + return -ENODEV;
> +

Nit: in that case, could you also move the assignment of of_id to its
own line right above these added lines? It would keep things in the
same place and the current layout does not even save any space since
the declaration of of_id currently takes two lines because the
assignment makes it longer than 80 chars...

With this,

Reviewed-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/