When multi_cpu_stop() loops waiting for other tasks, it can trigger an RCU CPU stall warning. This can be misleading because what is instead needed is information on whatever task is blocking multi_cpu_stop(). This commit therefore inserts an RCU quiescent state into the multi_cpu_stop() function's waitloop.
Showing the changes to include/linux (1 of 3 files). Show all
Unified · Split
| @@ -37,6 +37,7 @@ void kfree_call_rcu(struct rcu_head *head, rcu_callback_t func); · 36 unmodified lines | ||
| 37 | 37 | |
| 38 | 38 | void rcu_barrier(void); |
| 39 | 39 | bool rcu_eqs_special_set(int cpu); |
| 40 | +void rcu_momentary_dyntick_idle(void); | |
| 40 | 41 | unsigned long get_state_synchronize_rcu(void); |
| 41 | 42 | void cond_synchronize_rcu(unsigned long oldstate); |
| 42 | 43 | |