diff options
| -rw-r--r-- | include/linux/rcupdate.h | 12 | ||||
| -rw-r--r-- | kernel/rcu/update.c | 12 |
2 files changed, 24 insertions, 0 deletions
diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h index 9ccd644c1234..5a75d19aa661 100644 --- a/include/linux/rcupdate.h +++ b/include/linux/rcupdate.h | |||
| @@ -248,6 +248,18 @@ void rcu_idle_exit(void); | |||
| 248 | void rcu_irq_enter(void); | 248 | void rcu_irq_enter(void); |
| 249 | void rcu_irq_exit(void); | 249 | void rcu_irq_exit(void); |
| 250 | 250 | ||
| 251 | #ifdef CONFIG_RCU_STALL_COMMON | ||
| 252 | void rcu_sysrq_start(void); | ||
| 253 | void rcu_sysrq_end(void); | ||
| 254 | #else /* #ifdef CONFIG_RCU_STALL_COMMON */ | ||
| 255 | static inline void rcu_sysrq_start(void) | ||
| 256 | { | ||
| 257 | } | ||
| 258 | static inline void rcu_sysrq_end(void) | ||
| 259 | { | ||
| 260 | } | ||
| 261 | #endif /* #else #ifdef CONFIG_RCU_STALL_COMMON */ | ||
| 262 | |||
| 251 | #ifdef CONFIG_RCU_USER_QS | 263 | #ifdef CONFIG_RCU_USER_QS |
| 252 | void rcu_user_enter(void); | 264 | void rcu_user_enter(void); |
| 253 | void rcu_user_exit(void); | 265 | void rcu_user_exit(void); |
diff --git a/kernel/rcu/update.c b/kernel/rcu/update.c index ed7a0d72562c..a2aeb4df0f60 100644 --- a/kernel/rcu/update.c +++ b/kernel/rcu/update.c | |||
| @@ -320,6 +320,18 @@ int rcu_jiffies_till_stall_check(void) | |||
| 320 | return till_stall_check * HZ + RCU_STALL_DELAY_DELTA; | 320 | return till_stall_check * HZ + RCU_STALL_DELAY_DELTA; |
| 321 | } | 321 | } |
| 322 | 322 | ||
| 323 | void rcu_sysrq_start(void) | ||
| 324 | { | ||
| 325 | if (!rcu_cpu_stall_suppress) | ||
| 326 | rcu_cpu_stall_suppress = 2; | ||
| 327 | } | ||
| 328 | |||
| 329 | void rcu_sysrq_end(void) | ||
| 330 | { | ||
| 331 | if (rcu_cpu_stall_suppress == 2) | ||
| 332 | rcu_cpu_stall_suppress = 0; | ||
| 333 | } | ||
| 334 | |||
| 323 | static int rcu_panic(struct notifier_block *this, unsigned long ev, void *ptr) | 335 | static int rcu_panic(struct notifier_block *this, unsigned long ev, void *ptr) |
| 324 | { | 336 | { |
| 325 | rcu_cpu_stall_suppress = 1; | 337 | rcu_cpu_stall_suppress = 1; |
