From mboxrd@z Thu Jan 1 00:00:00 1970 From: gnomes@lxorguk.ukuu.org.uk (One Thousand Gnomes) Date: Fri, 26 Feb 2016 00:06:51 +0000 Subject: [PATCH] serial: ifx6x60: avoid uninitialized variable use In-Reply-To: <1456433283-3761559-1-git-send-email-arnd@arndb.de> References: <1456433283-3761559-1-git-send-email-arnd@arndb.de> Message-ID: <20160226000651.628e28fe@lxorguk.ukuu.org.uk> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Thu, 25 Feb 2016 21:47:57 +0100 Arnd Bergmann 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 ?