Re: [RFC PATCH 3/4] random: Only do mixback once per read

From: kbuild test robot
Date: Fri Oct 16 2015 - 02:24:48 EST


Hi George,

[auto build test ERROR on v4.3-rc5 -- if it's inappropriate base, please suggest rules for selecting the more suitable base]

url: https://github.com/0day-ci/linux/commits/George-Spelvin/Alternate-sclable-urandom-patchset/20151016-133627
config: x86_64-randconfig-x010-10130227 (attached as .config)
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64

All errors (new ones prefixed by >>):

In file included from include/asm-generic/percpu.h:6:0,
from arch/x86/include/asm/percpu.h:551,
from arch/x86/include/asm/preempt.h:5,
from include/linux/preempt.h:64,
from include/linux/spinlock.h:50,
from include/linux/seqlock.h:35,
from include/linux/time.h:5,
from include/uapi/linux/timex.h:56,
from include/linux/timex.h:56,
from include/linux/sched.h:19,
from include/linux/utsname.h:5,
from drivers/char/random.c:238:
drivers/char/random.c: In function 'extract_buf':
>> include/linux/percpu-defs.h:91:33: error: section attribute cannot be specified for local variables
extern __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
^
include/linux/percpu-defs.h:116:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
DEFINE_PER_CPU_SECTION(type, name, "")
^
drivers/char/random.c:1134:9: note: in expansion of macro 'DEFINE_PER_CPU'
static DEFINE_PER_CPU(__u32, random_nonce);
^
include/linux/percpu-defs.h:92:26: error: section attribute cannot be specified for local variables
__PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
^
include/linux/percpu-defs.h:116:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
DEFINE_PER_CPU_SECTION(type, name, "")
^
drivers/char/random.c:1134:9: note: in expansion of macro 'DEFINE_PER_CPU'
static DEFINE_PER_CPU(__u32, random_nonce);
^
>> include/linux/percpu-defs.h:92:26: error: declaration of '__pcpu_unique_random_nonce' with no linkage follows extern declaration
__PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
^
include/linux/percpu-defs.h:116:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
DEFINE_PER_CPU_SECTION(type, name, "")
^
drivers/char/random.c:1134:9: note: in expansion of macro 'DEFINE_PER_CPU'
static DEFINE_PER_CPU(__u32, random_nonce);
^
include/linux/percpu-defs.h:91:33: note: previous declaration of '__pcpu_unique_random_nonce' was here
extern __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
^
include/linux/percpu-defs.h:116:2: note: in expansion of macro 'DEFINE_PER_CPU_SECTION'
DEFINE_PER_CPU_SECTION(type, name, "")
^
drivers/char/random.c:1134:9: note: in expansion of macro 'DEFINE_PER_CPU'
static DEFINE_PER_CPU(__u32, random_nonce);
^
drivers/char/random.c:1134:31: error: section attribute cannot be specified for local variables
static DEFINE_PER_CPU(__u32, random_nonce);
^
include/linux/percpu-defs.h:93:44: note: in definition of macro 'DEFINE_PER_CPU_SECTION'
extern __PCPU_ATTRS(sec) __typeof__(type) name; \
^
drivers/char/random.c:1134:9: note: in expansion of macro 'DEFINE_PER_CPU'
static DEFINE_PER_CPU(__u32, random_nonce);
^
drivers/char/random.c:1134:31: error: section attribute cannot be specified for local variables
static DEFINE_PER_CPU(__u32, random_nonce);
^
include/linux/percpu-defs.h:95:19: note: in definition of macro 'DEFINE_PER_CPU_SECTION'
__typeof__(type) name
^
drivers/char/random.c:1134:9: note: in expansion of macro 'DEFINE_PER_CPU'
static DEFINE_PER_CPU(__u32, random_nonce);
^
drivers/char/random.c:1134:31: error: weak declaration of 'random_nonce' must be public
static DEFINE_PER_CPU(__u32, random_nonce);
^
include/linux/percpu-defs.h:95:19: note: in definition of macro 'DEFINE_PER_CPU_SECTION'
__typeof__(type) name
^
drivers/char/random.c:1134:9: note: in expansion of macro 'DEFINE_PER_CPU'
static DEFINE_PER_CPU(__u32, random_nonce);
^
drivers/char/random.c:1134:31: error: declaration of 'random_nonce' with no linkage follows extern declaration
static DEFINE_PER_CPU(__u32, random_nonce);
^
include/linux/percpu-defs.h:95:19: note: in definition of macro 'DEFINE_PER_CPU_SECTION'
__typeof__(type) name
^
drivers/char/random.c:1134:9: note: in expansion of macro 'DEFINE_PER_CPU'
static DEFINE_PER_CPU(__u32, random_nonce);
^
drivers/char/random.c:1134:31: note: previous declaration of 'random_nonce' was here
static DEFINE_PER_CPU(__u32, random_nonce);
^
include/linux/percpu-defs.h:93:44: note: in definition of macro 'DEFINE_PER_CPU_SECTION'
extern __PCPU_ATTRS(sec) __typeof__(type) name; \
^
drivers/char/random.c:1134:9: note: in expansion of macro 'DEFINE_PER_CPU'
static DEFINE_PER_CPU(__u32, random_nonce);
^

vim +91 include/linux/percpu-defs.h

7c756e6e Tejun Heo 2009-06-24 85 #define DECLARE_PER_CPU_SECTION(type, name, sec) \
7c756e6e Tejun Heo 2009-06-24 86 extern __PCPU_DUMMY_ATTRS char __pcpu_scope_##name; \
dd17c8f7 Rusty Russell 2009-10-29 87 extern __PCPU_ATTRS(sec) __typeof__(type) name
7c756e6e Tejun Heo 2009-06-24 88
7c756e6e Tejun Heo 2009-06-24 89 #define DEFINE_PER_CPU_SECTION(type, name, sec) \
7c756e6e Tejun Heo 2009-06-24 90 __PCPU_DUMMY_ATTRS char __pcpu_scope_##name; \
0f5e4816 Tejun Heo 2009-10-29 @91 extern __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
7c756e6e Tejun Heo 2009-06-24 @92 __PCPU_DUMMY_ATTRS char __pcpu_unique_##name; \
b1a0fbfd Tejun Heo 2013-12-04 93 extern __PCPU_ATTRS(sec) __typeof__(type) name; \
c43768cb Tejun Heo 2009-07-04 94 __PCPU_ATTRS(sec) PER_CPU_DEF_ATTRIBUTES __weak \
dd17c8f7 Rusty Russell 2009-10-29 95 __typeof__(type) name

:::::: The code at line 91 was first introduced by commit
:::::: 0f5e4816dbf38ce9488e611ca2296925c1e90d5e percpu: remove some sparse warnings

:::::: TO: Tejun Heo <tj@xxxxxxxxxx>
:::::: CC: Tejun Heo <tj@xxxxxxxxxx>

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: Binary data