Hi Greg, > -----Original Message----- > From: Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> > Sent: 2021年4月26日 16:09 > To: Sherry Sun <sherry.sun@xxxxxxx> > Cc: jirislaby@xxxxxxxxxx; linux-serial@xxxxxxxxxxxxxxx; linux- > kernel@xxxxxxxxxxxxxxx; dl-linux-imx <linux-imx@xxxxxxx> > Subject: Re: [PATCH 2/2] tty: serial: fsl_lpuart: fix the potential bug of > dereference null return value > > On Mon, Apr 26, 2021 at 03:49:35PM +0800, Sherry Sun wrote: > > This issue is reported by Coverity Check. > > In lpuart_probe, return value of function which returns null is > > dereferenced without checking. > > > > Signed-off-by: Sherry Sun <sherry.sun@xxxxxxx> > > --- > > drivers/tty/serial/fsl_lpuart.c | 3 +++ > > 1 file changed, 3 insertions(+) > > > > diff --git a/drivers/tty/serial/fsl_lpuart.c > > b/drivers/tty/serial/fsl_lpuart.c index 777d54b593f8..c95e71fd2ca0 > > 100644 > > --- a/drivers/tty/serial/fsl_lpuart.c > > +++ b/drivers/tty/serial/fsl_lpuart.c > > @@ -2589,6 +2589,9 @@ static int lpuart_probe(struct platform_device > *pdev) > > struct resource *res; > > int ret; > > > > + if (!sdata) > > + return -ENODEV; > > How can sdata be NULL? Is it possible that a case forgot to set sdata? Then the value will be NULL, such as { .compatible = "fsl,imx8qxp-lpuart", }. So I added the patch to avoid the kernel crash when run to sdata->reg_off directly. But I am not sure does it make sense. Thanks again for your time. Best regards Sherry > > thanks, > > greg k-h