tree:
https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git
locking/task_work
head: b9a78907dfb92b903d4d52402fc69a051cafa716
commit: a6377699039712759e256b989ffee5da7a50f791 [18/38] rcu,tracing: Create
trace_rcu_{enter,exit}()
config: x86_64-allyesconfig (attached as .config)
compiler: clang version 11.0.0 (git://gitmirror/llvm_project
949134e2fefd34a38ed71de90dffe2300e2e1139)
reproduce:
# FIXME the reproduce steps for clang is not ready yet
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from arch/x86/kernel/asm-offsets.c:9:
In file included from include/linux/crypto.h:19:
In file included from include/linux/slab.h:15:
In file included from include/linux/gfp.h:6:
In file included from include/linux/mmzone.h:21:
In file included from include/linux/mm_types.h:10:
In file included from include/linux/rbtree.h:22:
> include/linux/rcupdate.h:197:3: error: implicit declaration of
function 'rcu_irq_enter_irqsave' [-Werror,-Wimplicit-function-declaration]
rcu_irq_enter_irqsave();
^
include/linux/rcupdate.h:197:3: note: did you mean 'rcu_irq_enter_irqsafe'?
include/linux/rcutree.h:49:6: note: 'rcu_irq_enter_irqsafe' declared here
void rcu_irq_enter_irqsafe(void);
^
In file included from arch/x86/kernel/asm-offsets.c:9:
In file included from include/linux/crypto.h:19:
In file included from include/linux/slab.h:15:
In file included from include/linux/gfp.h:6:
In file included from include/linux/mmzone.h:21:
In file included from include/linux/mm_types.h:10:
In file included from include/linux/rbtree.h:22:
> include/linux/rcupdate.h:204:3: error: implicit declaration of
function 'rcu_irq_exit_irqsave' [-Werror,-Wimplicit-function-declaration]
rcu_irq_exit_irqsave();
^
include/linux/rcupdate.h:204:3: note: did you mean 'rcu_irq_exit_irqsafe'?
include/linux/rcutree.h:50:6: note: 'rcu_irq_exit_irqsafe' declared here
void rcu_irq_exit_irqsafe(void);
^
2 errors generated.
make[2]: *** [scripts/Makefile.build:101: arch/x86/kernel/asm-offsets.s] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [Makefile:1112: prepare0] Error 2
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:179: sub-make] Error 2
149 real 14 user 19 sys 22.93% cpu make prepare
vim +/rcu_irq_enter_irqsave +197 include/linux/rcupdate.h
177
178 /**
179 * trace_rcu_enter - Force RCU to be active, for code that needs RCU readers
180 *
181 * Very similar to RCU_NONIDLE() above.
182 *
183 * Tracing can happen while RCU isn't active yet, for instance in the idle
loop
184 * between rcu_idle_enter() and rcu_idle_exit(), or early in exception entry.
185 * RCU will happily ignore any read-side critical sections in this case.
186 *
187 * This function ensures that RCU is aware hereafter and the code can readily
188 * rely on RCU read-side critical sections working as expected.
189 *
190 * This function is NMI safe -- provided in_nmi() is correct and will nest up-to
191 * INT_MAX/2 times.
192 */
193 static inline int trace_rcu_enter(void)
194 {
195 int state = !rcu_is_watching();
196 if (state)
197 rcu_irq_enter_irqsave();
198 return state;
199 }
200
201 static inline void trace_rcu_exit(int state)
202 {
203 if (state)
204 rcu_irq_exit_irqsave();
205 }
206
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org