From 9034f799b9b7dff94db1b0dc2842aef1d5c7f80a Mon Sep 17 00:00:00 2001 From: "Paul E. McKenney" Date: Thu, 15 Apr 2010 12:50:39 -0700 Subject: [PATCH] --- yaml --- r: 190029 b: refs/heads/master c: bc293d62b26ec590afc90a9e0a31c45d355b7bd8 h: refs/heads/master i: 190027: 64cea1499520b34df28cb25e4ae4a0c120b18115 v: v3 --- [refs] | 2 +- trunk/include/linux/rcupdate.h | 5 +---- trunk/kernel/rcupdate.c | 7 +++++++ 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 229ebbf85d4c..e4959436de7c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 50aec0024eccb1d5f540ab64a1958eebcdb9340c +refs/heads/master: bc293d62b26ec590afc90a9e0a31c45d355b7bd8 diff --git a/trunk/include/linux/rcupdate.h b/trunk/include/linux/rcupdate.h index 9f1ddfef84b5..07db2feb8572 100644 --- a/trunk/include/linux/rcupdate.h +++ b/trunk/include/linux/rcupdate.h @@ -101,10 +101,7 @@ extern struct lockdep_map rcu_sched_lock_map; # define rcu_read_release_sched() \ lock_release(&rcu_sched_lock_map, 1, _THIS_IP_) -static inline int debug_lockdep_rcu_enabled(void) -{ - return likely(rcu_scheduler_active && debug_locks); -} +extern int debug_lockdep_rcu_enabled(void); /** * rcu_read_lock_held - might we be in RCU read-side critical section? diff --git a/trunk/kernel/rcupdate.c b/trunk/kernel/rcupdate.c index 63fe25433980..03a7ea1579f6 100644 --- a/trunk/kernel/rcupdate.c +++ b/trunk/kernel/rcupdate.c @@ -69,6 +69,13 @@ EXPORT_SYMBOL_GPL(rcu_scheduler_active); #ifdef CONFIG_DEBUG_LOCK_ALLOC +int debug_lockdep_rcu_enabled(void) +{ + return rcu_scheduler_active && debug_locks && + current->lockdep_recursion == 0; +} +EXPORT_SYMBOL_GPL(debug_lockdep_rcu_enabled); + /** * rcu_read_lock_bh_held - might we be in RCU-bh read-side critical section? *