Re: [PATCH v3 03/13] random: invalidate batched entropy after crng init
From: kbuild test robot
Date: Wed Jun 07 2017 - 13:43:07 EST
Hi Jason,
[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc4]
[cannot apply to next-20170607]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Jason-A-Donenfeld/Unseeded-In-Kernel-Randomness-Fixes/20170606-171249
config: sh-ul2_defconfig (attached as .config)
compiler: sh4-linux-gnu-gcc (Debian 6.1.1-9) 6.1.1 20160705
reproduce:
wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
make.cross ARCH=sh
Note: it may well be a FALSE warning. FWIW you are at least aware of it now.
http://gcc.gnu.org/wiki/Better_Uninitialized_Warnings
All warnings (new ones prefixed by >>):
In file included from include/linux/spinlock.h:53:0,
from include/linux/rcupdate.h:38,
from include/linux/rculist.h:10,
from include/linux/pid.h:4,
from include/linux/sched.h:13,
from include/linux/utsname.h:5,
from drivers//char/random.c:238:
drivers//char/random.c: In function 'get_random_u64':
>> include/linux/irqflags.h:69:3: warning: 'flags' may be used uninitialized in this function [-Wmaybe-uninitialized]
arch_local_irq_restore(flags); \
^~~~~~~~~~~~~~~~~~~~~~
drivers//char/random.c:2063:16: note: 'flags' was declared here
unsigned long flags;
^~~~~
In file included from include/linux/spinlock.h:53:0,
from include/linux/rcupdate.h:38,
from include/linux/rculist.h:10,
from include/linux/pid.h:4,
from include/linux/sched.h:13,
from include/linux/utsname.h:5,
from drivers//char/random.c:238:
drivers//char/random.c: In function 'get_random_u32':
>> include/linux/irqflags.h:69:3: warning: 'flags' may be used uninitialized in this function [-Wmaybe-uninitialized]
arch_local_irq_restore(flags); \
^~~~~~~~~~~~~~~~~~~~~~
drivers//char/random.c:2095:16: note: 'flags' was declared here
unsigned long flags;
^~~~~
--
In file included from include/linux/spinlock.h:53:0,
from include/linux/rcupdate.h:38,
from include/linux/rculist.h:10,
from include/linux/pid.h:4,
from include/linux/sched.h:13,
from include/linux/utsname.h:5,
from drivers/char/random.c:238:
drivers/char/random.c: In function 'get_random_u64':
>> include/linux/irqflags.h:69:3: warning: 'flags' may be used uninitialized in this function [-Wmaybe-uninitialized]
arch_local_irq_restore(flags); \
^~~~~~~~~~~~~~~~~~~~~~
drivers/char/random.c:2063:16: note: 'flags' was declared here
unsigned long flags;
^~~~~
In file included from include/linux/spinlock.h:53:0,
from include/linux/rcupdate.h:38,
from include/linux/rculist.h:10,
from include/linux/pid.h:4,
from include/linux/sched.h:13,
from include/linux/utsname.h:5,
from drivers/char/random.c:238:
drivers/char/random.c: In function 'get_random_u32':
>> include/linux/irqflags.h:69:3: warning: 'flags' may be used uninitialized in this function [-Wmaybe-uninitialized]
arch_local_irq_restore(flags); \
^~~~~~~~~~~~~~~~~~~~~~
drivers/char/random.c:2095:16: note: 'flags' was declared here
unsigned long flags;
^~~~~
vim +/flags +69 include/linux/irqflags.h
81d68a96a Steven Rostedt 2008-05-12 53 # define start_critical_timings() do { } while (0)
81d68a96a Steven Rostedt 2008-05-12 54 #endif
81d68a96a Steven Rostedt 2008-05-12 55
df9ee2927 David Howells 2010-10-07 56 /*
df9ee2927 David Howells 2010-10-07 57 * Wrap the arch provided IRQ routines to provide appropriate checks.
df9ee2927 David Howells 2010-10-07 58 */
df9ee2927 David Howells 2010-10-07 59 #define raw_local_irq_disable() arch_local_irq_disable()
df9ee2927 David Howells 2010-10-07 60 #define raw_local_irq_enable() arch_local_irq_enable()
df9ee2927 David Howells 2010-10-07 61 #define raw_local_irq_save(flags) \
df9ee2927 David Howells 2010-10-07 62 do { \
df9ee2927 David Howells 2010-10-07 63 typecheck(unsigned long, flags); \
df9ee2927 David Howells 2010-10-07 64 flags = arch_local_irq_save(); \
df9ee2927 David Howells 2010-10-07 65 } while (0)
df9ee2927 David Howells 2010-10-07 66 #define raw_local_irq_restore(flags) \
df9ee2927 David Howells 2010-10-07 67 do { \
df9ee2927 David Howells 2010-10-07 68 typecheck(unsigned long, flags); \
df9ee2927 David Howells 2010-10-07 @69 arch_local_irq_restore(flags); \
df9ee2927 David Howells 2010-10-07 70 } while (0)
df9ee2927 David Howells 2010-10-07 71 #define raw_local_save_flags(flags) \
df9ee2927 David Howells 2010-10-07 72 do { \
df9ee2927 David Howells 2010-10-07 73 typecheck(unsigned long, flags); \
df9ee2927 David Howells 2010-10-07 74 flags = arch_local_save_flags(); \
df9ee2927 David Howells 2010-10-07 75 } while (0)
df9ee2927 David Howells 2010-10-07 76 #define raw_irqs_disabled_flags(flags) \
df9ee2927 David Howells 2010-10-07 77 ({ \
:::::: The code at line 69 was first introduced by commit
:::::: df9ee29270c11dba7d0fe0b83ce47a4d8e8d2101 Fix IRQ flag handling naming
:::::: TO: David Howells <dhowells@xxxxxxxxxx>
:::::: CC: David Howells <dhowells@xxxxxxxxxx>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip