Messages in this thread | | | Date | Mon, 26 Apr 2021 10:08:30 +0200 | From | Greg KH <> | Subject | Re: [PATCH 1/2] tty: serial: fsl_lpuart: fix the potential bug of division or modulo by zero |
| |
On Mon, Apr 26, 2021 at 03:49:34PM +0800, Sherry Sun wrote: > This issue is reported by Coverity Check. > In lpuart32_console_get_options, division or modulo by zero may results > in undefined behavior. > > Signed-off-by: Sherry Sun <sherry.sun@nxp.com> > --- > 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 794035041744..777d54b593f8 100644 > --- a/drivers/tty/serial/fsl_lpuart.c > +++ b/drivers/tty/serial/fsl_lpuart.c > @@ -2414,6 +2414,9 @@ lpuart32_console_get_options(struct lpuart_port *sport, int *baud, > > bd = lpuart32_read(&sport->port, UARTBAUD); > bd &= UARTBAUD_SBR_MASK; > + if (!bd) > + return;
How can this ever happen?
Not to say this is a bad check, but it feels like this can't really happen in real life, what code patch could create this result?
And have you tested this on real hardware?
thanks,
greg k-h
| |