Re: [PATCH v3 03/13] random: invalidate batched entropy after crng init

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Kernel]     [Gnu Classpath]     [Gnu Crypto]     [DM Crypt]     [Netfilter]     [Bugtraq]

  Powered by Linux