]> asedeno.scripts.mit.edu Git - linux.git/commit
serial: mxs-auart: Fix potential infinite loop
authorAnton Vasilyev <vasilyev@ispras.ru>
Tue, 7 Aug 2018 10:59:05 +0000 (13:59 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 18 Sep 2018 14:07:24 +0000 (16:07 +0200)
commit5963e8a3122471cadfe0eba41c4ceaeaa5c8bb4d
tree3da5f15d79f5c00e6fe920fd27d72d2020868004
parentd2de9601eb12e7c5b7519cf155cf613322211b54
serial: mxs-auart: Fix potential infinite loop

On the error path of mxs_auart_request_gpio_irq() is performed
backward iterating with index i of enum type. Underline enum type
may be unsigned char. In this case check (--i >= 0) will be always
true and error handling goes into infinite loop.

The patch changes the check so that it is valid for signed and unsigned
types.

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Anton Vasilyev <vasilyev@ispras.ru>
Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/mxs-auart.c