[PATCH] arm: Convert arm boot_lock to raw

Tony Lindgren tony at atomide.com
Fri May 4 08:21:37 PDT 2018


* Sebastian Andrzej Siewior <bigeasy at linutronix.de> [180504 10:58]:
> From: Frank Rowand <frank.rowand at am.sony.com>
> 
> The arm boot_lock is used by the secondary processor startup code.  The locking
> task is the idle thread, which has idle->sched_class == &idle_sched_class.
> idle_sched_class->enqueue_task == NULL, so if the idle task blocks on the
> lock, the attempt to wake it when the lock becomes available will fail:
> 
> try_to_wake_up()
>    ...
>       activate_task()
>          enqueue_task()
>             p->sched_class->enqueue_task(rq, p, flags)
> 
> Fix by converting boot_lock to a raw spin lock.

Still works for me:

Tested-by: Tony Lindgren <tony at atomide.com>



More information about the linux-arm-kernel mailing list