linux/arch/arm/mach-sti
Frank Rowand 045470f9f7 preempt-rt: Convert arm boot_lock to raw
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.

Signed-off-by: Frank Rowand <frank.rowand@am.sony.com>
Link: http://lkml.kernel.org/r/4E77B952.3010606@am.sony.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2020-10-14 00:59:08 +03:00
..
Kconfig ARM: SoC fixes for 3.13 merge window 2013-11-16 12:45:55 -08:00
Makefile ARM: sti: Add STiH415 SOC support 2013-06-25 13:26:47 -07:00
board-dt.c ARM: sti: remove custom .init_time hook 2013-09-29 21:09:43 +02:00
headsmp.S ARM: STi: remove sti_secondary_start from INIT section. 2013-08-04 13:40:55 -07:00
platsmp.c preempt-rt: Convert arm boot_lock to raw 2020-10-14 00:59:08 +03:00
smp.h ARM: sti: Add STiH415 SOC support 2013-06-25 13:26:47 -07:00