OSDN Git Service

stop_machine: Provide RCU quiescent state in multi_cpu_stop()
authorPaul E. McKenney <paulmck@kernel.org>
Wed, 10 Jul 2019 15:01:01 +0000 (08:01 -0700)
committerPaul E. McKenney <paulmck@kernel.org>
Sat, 5 Oct 2019 17:46:05 +0000 (10:46 -0700)
commit366237e7b0833faa2d8da7a8d7d7da8c3ca802e5
tree5944c55f1dd161c7c1a2420fb259854930324df2
parentd38e6dc6ed0dfef8d323354031a1ee1a7cfdedc1
stop_machine: Provide RCU quiescent state in multi_cpu_stop()

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.

Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
include/linux/rcutree.h
kernel/rcu/tree.c
kernel/stop_machine.c