Re: [PATCH net-next] net/ncsi: avoid maybe-uninitialized warning

From: David Miller
Date: Mon Jul 25 2016 - 13:33:38 EST

From: Arnd Bergmann <arnd@xxxxxxxx>
Date: Thu, 21 Jul 2016 21:28:34 +0200

> gcc-4.9 and higher warn about the newly added NSCI code:
> net/ncsi/ncsi-manage.c: In function 'ncsi_process_next_channel':
> net/ncsi/ncsi-manage.c:1003:2: error: 'old_state' may be used uninitialized in this function [-Werror=maybe-uninitialized]
> The warning is a false positive and therefore harmless, but it would be good to
> avoid it anyway. I have determined that the barrier in the spin_unlock_irqsave()
> is what confuses gcc to the point that it cannot track whether the variable
> was unused or not.
> This rearranges the code in a way that makes it obvious to gcc that old_state
> is always initialized at the time of use, functionally this should not
> change anything.
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>