[tip:core/urgent 2/3] kernel/watchdog_hld.c:232:11: error: 'dead_event_ev' undeclared

From: kbuild test robot
Date: Wed Nov 01 2017 - 16:13:20 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core/urgent
head: c7254c8aabe3025770fdb6f2d84aded11716ca2b
commit: 1c294733b7b9f712f78d15cfa75ffdea72b79abb [2/3] watchdog/harclockup/perf: Revert a33d44843d45 ("watchdog/hardlockup/perf: Simplify deferred event destroy")
config: x86_64-randconfig-x018-201744 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
git checkout 1c294733b7b9f712f78d15cfa75ffdea72b79abb
# save the attached .config to linux build tree
make ARCH=x86_64

All error/warnings (new ones prefixed by >>):

In file included from include/asm-generic/percpu.h:6:0,
from arch/x86/include/asm/percpu.h:542,
from arch/x86/include/asm/current.h:5,
from include/linux/sched.h:11,
from include/linux/nmi.h:7,
from kernel/watchdog_hld.c:14:
kernel/watchdog_hld.c: In function 'hardlockup_detector_perf_cleanup':
>> kernel/watchdog_hld.c:232:11: error: 'dead_event_ev' undeclared (first use in this function)
per_cpu(dead_event_ev, cpu) = NULL;
^
include/linux/percpu-defs.h:206:47: note: in definition of macro '__verify_pcpu_ptr'
const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
^~~
include/linux/percpu-defs.h:256:29: note: in expansion of macro 'per_cpu_ptr'
#define per_cpu(var, cpu) (*per_cpu_ptr(&(var), cpu))
^~~~~~~~~~~
>> kernel/watchdog_hld.c:232:3: note: in expansion of macro 'per_cpu'
per_cpu(dead_event_ev, cpu) = NULL;
^~~~~~~
kernel/watchdog_hld.c:232:11: note: each undeclared identifier is reported only once for each function it appears in
per_cpu(dead_event_ev, cpu) = NULL;
^
include/linux/percpu-defs.h:206:47: note: in definition of macro '__verify_pcpu_ptr'
const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
^~~
include/linux/percpu-defs.h:256:29: note: in expansion of macro 'per_cpu_ptr'
#define per_cpu(var, cpu) (*per_cpu_ptr(&(var), cpu))
^~~~~~~~~~~
>> kernel/watchdog_hld.c:232:3: note: in expansion of macro 'per_cpu'
per_cpu(dead_event_ev, cpu) = NULL;
^~~~~~~

vim +/dead_event_ev +232 kernel/watchdog_hld.c

213
214 /**
215 * hardlockup_detector_perf_cleanup - Cleanup disabled events and destroy them
216 *
217 * Called from lockup_detector_cleanup(). Serialized by the caller.
218 */
219 void hardlockup_detector_perf_cleanup(void)
220 {
221 int cpu;
222
223 for_each_cpu(cpu, &dead_events_mask) {
224 struct perf_event *event = per_cpu(dead_event, cpu);
225
226 /*
227 * Required because for_each_cpu() reports unconditionally
228 * CPU0 as set on UP kernels. Sigh.
229 */
230 if (event)
231 perf_event_release_kernel(event);
> 232 per_cpu(dead_event_ev, cpu) = NULL;
233 }
234 cpumask_clear(&dead_events_mask);
235 }
236

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

Attachment: .config.gz
Description: application/gzip