[PATCH] serial: ifx6x60: avoid uninitialized variable use

One Thousand Gnomes gnomes at lxorguk.ukuu.org.uk
Thu Feb 25 16:06:51 PST 2016


On Thu, 25 Feb 2016 21:47:57 +0100
Arnd Bergmann <arnd at arndb.de> wrote:

> gcc warns about a potential use of an uninitialized variable in this driver:
> 
> drivers/tty/serial/ifx6x60.c: In function 'ifx_spi_complete':
> drivers/tty/serial/ifx6x60.c:713:6: warning: 'more' may be used uninitialized in this function [-Wmaybe-uninitialized]
>    if (more || ifx_dev->spi_more || queue_length > 0 ||
> 
> Unlike a lot of other such warnings, this one is correct and describes
> an actual problem in the handling of the "IFX_SPI_HEADER_F" result code.
> 
> This appears to be a result from a restructuring of the driver that
> dates back to before it was merged in the kernel, so it's impossible
> to know where it went wrong. I also don't know what that result code
> means, so I have no idea if setting 'more' to zero is the correct
> solution, but at least it makes the behavior reproducible rather than
> depending on whatever happens to be on the kernel stack.

Would it not be far simpler just to set more = 0 at the top of
ifx_spi_complete ?






More information about the linux-arm-kernel mailing list