Browse Source

ftrace/rcu: Do not trace debug_lockdep_rcu_enabled()

The function debug_lockdep_rcu_enabled() is part of the RCU lockdep
debugging, and is called very frequently. I found that if I enable
a lot of debugging and run the function graph tracer, this
function can cause a live lock of the system.

We don't usually trace lockdep infrastructure, no need to trace
this either.

Reviewed-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
master
Steven Rostedt (Red Hat) 9 years ago
committed by Steven Rostedt
parent
commit
a0a5a0561f
  1. 2
      kernel/rcupdate.c

2
kernel/rcupdate.c

@ -122,7 +122,7 @@ struct lockdep_map rcu_sched_lock_map =
STATIC_LOCKDEP_MAP_INIT("rcu_read_lock_sched", &rcu_sched_lock_key);
EXPORT_SYMBOL_GPL(rcu_sched_lock_map);
int debug_lockdep_rcu_enabled(void)
int notrace debug_lockdep_rcu_enabled(void)
{
return rcu_scheduler_active && debug_locks &&
current->lockdep_recursion == 0;

Loading…
Cancel
Save