Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932760AbcKPFTp (ORCPT ); Wed, 16 Nov 2016 00:19:45 -0500 Received: from mail-ua0-f180.google.com ([209.85.217.180]:35879 "EHLO mail-ua0-f180.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750768AbcKPFTo (ORCPT ); Wed, 16 Nov 2016 00:19:44 -0500 MIME-Version: 1.0 In-Reply-To: References: <20161116112749.061f7424@canb.auug.org.au> From: Joel Fernandes Date: Tue, 15 Nov 2016 21:19:43 -0800 Message-ID: Subject: Re: linux-next: build warning after merge of the pstore tree To: Kees Cook Cc: Stephen Rothwell , Linux-Next , LKML Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2136 Lines: 53 On Tue, Nov 15, 2016 at 4:35 PM, Kees Cook wrote: > On Tue, Nov 15, 2016 at 4:27 PM, Stephen Rothwell wrote: >> Hi Kees, >> >> After merging the pstore tree, today's linux-next build (x86_64 >> allmodconfig) produced this warning: >> >> In file included from include/linux/rcupdate.h:38:0, >> from include/linux/idr.h:18, >> from include/linux/kernfs.h:14, >> from include/linux/sysfs.h:15, >> from include/linux/kobject.h:21, >> from include/linux/device.h:17, >> from fs/pstore/ram_core.c:17: >> fs/pstore/ram_core.c: In function 'buffer_size_add': >> include/linux/spinlock.h:246:3: warning: 'flags' may be used uninitialized in this function [-Wmaybe-uninitialized] >> _raw_spin_unlock_irqrestore(lock, flags); \ >> ^ >> fs/pstore/ram_core.c:78:16: note: 'flags' was declared here >> unsigned long flags; >> ^ >> In file included from include/linux/rcupdate.h:38:0, >> from include/linux/idr.h:18, >> from include/linux/kernfs.h:14, >> from include/linux/sysfs.h:15, >> from include/linux/kobject.h:21, >> from include/linux/device.h:17, >> from fs/pstore/ram_core.c:17: >> fs/pstore/ram_core.c: In function 'buffer_start_add': >> include/linux/spinlock.h:246:3: warning: 'flags' may be used uninitialized in this function [-Wmaybe-uninitialized] >> _raw_spin_unlock_irqrestore(lock, flags); \ >> ^ >> fs/pstore/ram_core.c:56:16: note: 'flags' was declared here >> unsigned long flags; >> ^ >> >> Introduced by commit >> >> 95937ddce59a ("pstore: Allow prz to control need for locking") >> >> They appear to be a very noisy false positives. :-( > > Hah. Ironically, I ran sparse against this code to make sure it would > be happy with the conditional locking, and totally missed the flags > bit. I'll switch it to explicitly initialize flags to silence this. > Ah! False positive. Thanks a lot Kees for fixing it. Regards, Joel