]> git.baikalelectronics.ru Git - kernel.git/commit
trace: Don't declare trace_*_rcuidle functions in modules
authorJosh Triplett <josh@joshtriplett.org>
Wed, 5 Sep 2012 06:23:06 +0000 (23:23 -0700)
committerSteven Rostedt <rostedt@goodmis.org>
Wed, 12 Sep 2012 14:20:14 +0000 (10:20 -0400)
commit41f342019067ad580577abd172a61f0fad040101
treeef19b2666aae3850fc70741529d4090c31698c7f
parent5e6ee0c4464c6acbcfa0e5584b89bf0d6bce54a1
trace: Don't declare trace_*_rcuidle functions in modules

Tracepoints declare a static inline trace_*_rcuidle variant of the trace
function, to support safely generating trace events from the idle loop.
Module code never actually uses that variant of trace functions, because
modules don't run code that needs tracing with RCU idled.  However, the
declaration of those otherwise unused functions causes the module to
reference rcu_idle_exit and rcu_idle_enter, which RCU does not export to
modules.

To avoid this, don't generate trace_*_rcuidle functions for tracepoints
declared in module code.

Link: http://lkml.kernel.org/r/20120905062306.GA14756@leaf
Reported-by: Steven Rostedt <rostedt@goodmis.org>
Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Josh Triplett <josh@joshtriplett.org>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
include/linux/tracepoint.h