Re: [PATCH v2] shmem: avoid maybe-uninitialized warning

From: Kirill A. Shutemov
Date: Mon Oct 24 2016 - 19:48:52 EST


On Mon, Oct 24, 2016 at 10:57:09PM +0200, Arnd Bergmann wrote:
> After enabling -Wmaybe-uninitialized warnings, we get a false-postive
> warning for shmem:
>
> mm/shmem.c: In function âshmem_getpage_gfpâ:
> include/linux/spinlock.h:332:21: error: âinfoâ may be used uninitialized in this function [-Werror=maybe-uninitialized]
>
> This can be easily avoided, since the correct 'info' pointer is known
> at the time we first enter the function, so we can simply move the
> initialization up. Moving it before the first label avoids the
> warning and lets us remove two later initializations.
>
> Note that the function is so hard to read that it not only confuses
> the compiler, but also most readers and without this patch it could\
> easily break if one of the 'goto's changed.
>
> Link: https://www.spinics.net/lists/kernel/msg2368133.html
> Acked-by: Michal Hocko <mhocko@xxxxxxxx>
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>

Acked-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>

--
Kirill A. Shutemov