On Thu, 24 Sep 2020 15:35:17 -0400 Steven Rostedt <rostedt@xxxxxxxxxxx> wrote: > > I'm ok with tracepoint_enabled(). However, I would have placed it in > > tracepoint.h rather than tracepoint-defs.h, and we should figure out > > why people complain that tracepoint.h is including headers too > > eagerly. > > I could see if it would work in tracepoints.h. > > It might. I was just being extra cautious. Well that blew up quick! Try using tracepoint.h in include/linux/page_ref.h and arch/x86/include/asm/msr.h and see what happens. CC arch/x86/kernel/asm-offsets.s In file included from /work/git/linux-trace.git/include/linux/srcu.h:20, from /work/git/linux-trace.git/include/linux/tracepoint.h:16, from /work/git/linux-trace.git/arch/x86/include/asm/msr.h:68, from /work/git/linux-trace.git/arch/x86/include/asm/processor.h:22, from /work/git/linux-trace.git/arch/x86/include/asm/cpufeature.h:5, from /work/git/linux-trace.git/arch/x86/include/asm/thread_info.h:53, from /work/git/linux-trace.git/include/linux/thread_info.h:38, from /work/git/linux-trace.git/arch/x86/include/asm/preempt.h:7, from /work/git/linux-trace.git/include/linux/preempt.h:78, from /work/git/linux-trace.git/include/linux/spinlock.h:51, from /work/git/linux-trace.git/include/linux/mmzone.h:8, from /work/git/linux-trace.git/include/linux/gfp.h:6, from /work/git/linux-trace.git/include/linux/slab.h:15, from /work/git/linux-trace.git/include/linux/crypto.h:20, from /work/git/linux-trace.git/arch/x86/kernel/asm-offsets.c:9: /work/git/linux-trace.git/include/linux/rcupdate.h: In function ‘rcu_read_lock_sched’: /work/git/linux-trace.git/include/linux/rcupdate.h:740:2: error: implicit declaration of function ‘preempt_disable’ [-Werror=implicit-function-declaration] 740 | preempt_disable(); | ^~~~~~~~~~~~~~~ /work/git/linux-trace.git/include/linux/rcupdate.h: In function ‘rcu_read_lock_sched_notrace’: /work/git/linux-trace.git/include/linux/rcupdate.h:750:2: error: implicit declaration of function ‘preempt_disable_notrace’; did you mean ‘paravirt_disable_iospace’? [-Werror=implicit-function-declaration] 750 | preempt_disable_notrace(); | ^~~~~~~~~~~~~~~~~~~~~~~ | paravirt_disable_iospace /work/git/linux-trace.git/include/linux/rcupdate.h: In function ‘rcu_read_unlock_sched’: /work/git/linux-trace.git/include/linux/rcupdate.h:765:2: error: implicit declaration of function ‘preempt_enable’ [-Werror=implicit-function-declaration] 765 | preempt_enable(); | ^~~~~~~~~~~~~~ /work/git/linux-trace.git/include/linux/rcupdate.h: In function ‘rcu_read_unlock_sched_notrace’: /work/git/linux-trace.git/include/linux/rcupdate.h:772:2: error: implicit declaration of function ‘preempt_enable_notrace’ [-Werror=implicit-function-declaration] 772 | preempt_enable_notrace(); | ^~~~~~~~~~~~~~~~~~~~~~ -- Steve