aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/rcu/update.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/rcu/update.c')
-rw-r--r--kernel/rcu/update.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/kernel/rcu/update.c b/kernel/rcu/update.c
index 6cb3dff89e2b..c54609faf233 100644
--- a/kernel/rcu/update.c
+++ b/kernel/rcu/update.c
@@ -128,6 +128,11 @@ struct lockdep_map rcu_sched_lock_map =
128 STATIC_LOCKDEP_MAP_INIT("rcu_read_lock_sched", &rcu_sched_lock_key); 128 STATIC_LOCKDEP_MAP_INIT("rcu_read_lock_sched", &rcu_sched_lock_key);
129EXPORT_SYMBOL_GPL(rcu_sched_lock_map); 129EXPORT_SYMBOL_GPL(rcu_sched_lock_map);
130 130
131static struct lock_class_key rcu_callback_key;
132struct lockdep_map rcu_callback_map =
133 STATIC_LOCKDEP_MAP_INIT("rcu_callback", &rcu_callback_key);
134EXPORT_SYMBOL_GPL(rcu_callback_map);
135
131int notrace debug_lockdep_rcu_enabled(void) 136int notrace debug_lockdep_rcu_enabled(void)
132{ 137{
133 return rcu_scheduler_active && debug_locks && 138 return rcu_scheduler_active && debug_locks &&
@@ -195,17 +200,6 @@ void wait_rcu_gp(call_rcu_func_t crf)
195} 200}
196EXPORT_SYMBOL_GPL(wait_rcu_gp); 201EXPORT_SYMBOL_GPL(wait_rcu_gp);
197 202
198#ifdef CONFIG_PROVE_RCU
199/*
200 * wrapper function to avoid #include problems.
201 */
202int rcu_my_thread_group_empty(void)
203{
204 return thread_group_empty(current);
205}
206EXPORT_SYMBOL_GPL(rcu_my_thread_group_empty);
207#endif /* #ifdef CONFIG_PROVE_RCU */
208
209#ifdef CONFIG_DEBUG_OBJECTS_RCU_HEAD 203#ifdef CONFIG_DEBUG_OBJECTS_RCU_HEAD
210static inline void debug_init_rcu_head(struct rcu_head *head) 204static inline void debug_init_rcu_head(struct rcu_head *head)
211{ 205{