diff options
| author | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2013-04-11 13:15:52 -0400 |
|---|---|---|
| committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2013-06-10 16:45:52 -0400 |
| commit | 2439b696cb5303f1eeb6aeebcee19e0056c3dd6e (patch) | |
| tree | d3f58ced257743911040a2cff5b03cd82aacc8a7 /include/linux | |
| parent | 7807acdb6b794b3af42dfa1912edd4fba8d0b622 (diff) | |
rcu: Shrink TINY_RCU by moving exit_rcu()
Now that TINY_PREEMPT_RCU is no more, exit_rcu() is always an empty
function. But if TINY_RCU is going to have an empty function, it should
be in include/linux/rcutiny.h, where it does not bloat the kernel.
This commit therefore moves exit_rcu() out of kernel/rcupdate.c to
kernel/rcutree_plugin.h, and places a static inline empty function in
include/linux/rcutiny.h in order to shrink TINY_RCU a bit.
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/rcupdate.h | 2 | ||||
| -rw-r--r-- | include/linux/rcutiny.h | 4 | ||||
| -rw-r--r-- | include/linux/rcutree.h | 2 |
3 files changed, 6 insertions, 2 deletions
diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h index 257b50f9d2dc..4b14bdc911d7 100644 --- a/include/linux/rcupdate.h +++ b/include/linux/rcupdate.h | |||
| @@ -240,8 +240,6 @@ static inline void rcu_user_hooks_switch(struct task_struct *prev, | |||
| 240 | struct task_struct *next) { } | 240 | struct task_struct *next) { } |
| 241 | #endif /* CONFIG_RCU_USER_QS */ | 241 | #endif /* CONFIG_RCU_USER_QS */ |
| 242 | 242 | ||
| 243 | extern void exit_rcu(void); | ||
| 244 | |||
| 245 | /** | 243 | /** |
| 246 | * RCU_NONIDLE - Indicate idle-loop code that needs RCU readers | 244 | * RCU_NONIDLE - Indicate idle-loop code that needs RCU readers |
| 247 | * @a: Code that RCU needs to pay attention to. | 245 | * @a: Code that RCU needs to pay attention to. |
diff --git a/include/linux/rcutiny.h b/include/linux/rcutiny.h index 51230b63be93..e31005ee339e 100644 --- a/include/linux/rcutiny.h +++ b/include/linux/rcutiny.h | |||
| @@ -119,6 +119,10 @@ static inline void rcu_cpu_stall_reset(void) | |||
| 119 | { | 119 | { |
| 120 | } | 120 | } |
| 121 | 121 | ||
| 122 | static inline void exit_rcu(void) | ||
| 123 | { | ||
| 124 | } | ||
| 125 | |||
| 122 | #ifdef CONFIG_DEBUG_LOCK_ALLOC | 126 | #ifdef CONFIG_DEBUG_LOCK_ALLOC |
| 123 | extern int rcu_scheduler_active __read_mostly; | 127 | extern int rcu_scheduler_active __read_mostly; |
| 124 | extern void rcu_scheduler_starting(void); | 128 | extern void rcu_scheduler_starting(void); |
diff --git a/include/linux/rcutree.h b/include/linux/rcutree.h index 3f1aa8f98666..226169d1bd2b 100644 --- a/include/linux/rcutree.h +++ b/include/linux/rcutree.h | |||
| @@ -85,6 +85,8 @@ extern void rcu_force_quiescent_state(void); | |||
| 85 | extern void rcu_bh_force_quiescent_state(void); | 85 | extern void rcu_bh_force_quiescent_state(void); |
| 86 | extern void rcu_sched_force_quiescent_state(void); | 86 | extern void rcu_sched_force_quiescent_state(void); |
| 87 | 87 | ||
| 88 | extern void exit_rcu(void); | ||
| 89 | |||
| 88 | extern void rcu_scheduler_starting(void); | 90 | extern void rcu_scheduler_starting(void); |
| 89 | extern int rcu_scheduler_active __read_mostly; | 91 | extern int rcu_scheduler_active __read_mostly; |
| 90 | 92 | ||
