aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/rcutree_plugin.h
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/rcutree_plugin.h')
-rw-r--r--kernel/rcutree_plugin.h23
1 files changed, 21 insertions, 2 deletions
diff --git a/kernel/rcutree_plugin.h b/kernel/rcutree_plugin.h
index 8ff1ba7b3c4..65250219ab6 100644
--- a/kernel/rcutree_plugin.h
+++ b/kernel/rcutree_plugin.h
@@ -419,6 +419,18 @@ static void __cpuinit rcu_preempt_init_percpu_data(int cpu)
419} 419}
420 420
421/* 421/*
422 * Initialize preemptable RCU's state structures.
423 */
424static void __init __rcu_init_preempt(void)
425{
426 int i; /* All used by RCU_INIT_FLAVOR(). */
427 int j;
428 struct rcu_node *rnp;
429
430 RCU_INIT_FLAVOR(&rcu_preempt_state, rcu_preempt_data);
431}
432
433/*
422 * Check for a task exiting while in a preemptable-RCU read-side 434 * Check for a task exiting while in a preemptable-RCU read-side
423 * critical section, clean up if so. No need to issue warnings, 435 * critical section, clean up if so. No need to issue warnings,
424 * as debug_check_no_locks_held() already does this if lockdep 436 * as debug_check_no_locks_held() already does this if lockdep
@@ -518,7 +530,7 @@ static void rcu_preempt_offline_cpu(int cpu)
518 * Because preemptable RCU does not exist, it never has any callbacks 530 * Because preemptable RCU does not exist, it never has any callbacks
519 * to check. 531 * to check.
520 */ 532 */
521void rcu_preempt_check_callbacks(int cpu) 533static void rcu_preempt_check_callbacks(int cpu)
522{ 534{
523} 535}
524 536
@@ -526,7 +538,7 @@ void rcu_preempt_check_callbacks(int cpu)
526 * Because preemptable RCU does not exist, it never has any callbacks 538 * Because preemptable RCU does not exist, it never has any callbacks
527 * to process. 539 * to process.
528 */ 540 */
529void rcu_preempt_process_callbacks(void) 541static void rcu_preempt_process_callbacks(void)
530{ 542{
531} 543}
532 544
@@ -563,4 +575,11 @@ static void __cpuinit rcu_preempt_init_percpu_data(int cpu)
563{ 575{
564} 576}
565 577
578/*
579 * Because preemptable RCU does not exist, it need not be initialized.
580 */
581static void __init __rcu_init_preempt(void)
582{
583}
584
566#endif /* #else #ifdef CONFIG_TREE_PREEMPT_RCU */ 585#endif /* #else #ifdef CONFIG_TREE_PREEMPT_RCU */