]> git.baikalelectronics.ru Git - kernel.git/commit
irqchip/mips-gic: Get rid of the reliance on irq_cpu_online()
authorMarc Zyngier <maz@kernel.org>
Thu, 21 Oct 2021 17:04:13 +0000 (18:04 +0100)
committerMarc Zyngier <maz@kernel.org>
Tue, 26 Oct 2021 10:19:38 +0000 (11:19 +0100)
commite7f42ea1117671889ffbdffcc97650b95b2d826f
tree91d593ebe27df71fa063e8a610610be27e2981ae
parentd696c64450bf98f9377e793d1687a4bc8857d272
irqchip/mips-gic: Get rid of the reliance on irq_cpu_online()

The MIPS GIC driver uses irq_cpu_online() to go and program the
per-CPU interrupts. However, this method iterates over all IRQs
in the system, despite only 3 per-CPU interrupts being of interest.

Let's be terribly bold and do the iteration ourselves. To ensure
mutual exclusion, hold the gic_lock spinlock that is otherwise
taken while dealing with these interrupts.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Reviewed-by: Serge Semin <fancer.lancer@gmail.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Tested-by: Serge Semin <fancer.lancer@gmail.com>
Link: https://lore.kernel.org/r/20211021170414.3341522-3-maz@kernel.org
drivers/irqchip/irq-mips-gic.c