On Mon 24-10-16 21:42:36, Arnd Bergmann wrote: > On Monday, October 24, 2016 6:22:44 PM CEST Michal Hocko wrote: > > On Mon 24-10-16 17:25:03, 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] > > > > Is this really a false positive? If we goto clear and then > > if (sgp <= SGP_CACHE && > > ((loff_t)index << PAGE_SHIFT) >= i_size_read(inode)) { > > if (alloced) { > > > > we could really take a spinlock on an unitialized variable. But maybe > > there is something that prevents from that... > > I did the patch a few weeks ago (I sent the more important > ones out first) and I think I concluded then that 'alloced' > would be false in that case. OK, I guess you are right and alloced is set only after info has been already initialized. So this really looks like a false positive. > > > Anyway the whole shmem_getpage_gfp is really hard to follow due to gotos > > and labels proliferation. > > Exactly. Maybe we should mark the patch for -stable backports after all > just to be sure. I am not really sure a stable backport is really necessary but a cleanup in this area would be more than welcome. At least from me ;) -- Michal Hocko SUSE Labs -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>