After posting on_cpu() support yesterday I thought of some potential issues. 1) cpu0 was the only cpu allowed to call on_cpus, and no cpu was allowed to call on_cpu on cpu0 (as it'll never idle). 2) deadlocks are easy with this idle state scheduling model, but also easy to detect, so we should. v2: - fix race in cpu_wait() by ordering set/check correctly Andrew Jones (2): arm/arm64: smp: cpu0 is special arm/arm64: smp: add deadlock detection lib/arm/asm/smp.h | 2 ++ lib/arm/smp.c | 46 ++++++++++++++++++++++++++++++++++++---------- 2 files changed, 38 insertions(+), 10 deletions(-) -- 2.9.4