diff options
author | Florian Fainelli <f.fainelli@gmail.com> | 2021-10-20 11:48:50 -0700 |
---|---|---|
committer | Marc Zyngier <maz@kernel.org> | 2021-10-20 20:06:33 +0100 |
commit | 35eb2ef5df42d3c3d2186ae6dab5622a31e6ceee (patch) | |
tree | c0698f1318ba39479bc0fe9c8604dd6addbf8f70 /drivers/irqchip/irq-bcm6345-l1.c | |
parent | 4b55192009fc62d2817efa2346ec1c0da4be1033 (diff) |
irqchip/irq-bcm7038-l1: Gate use of CPU logical map to MIPS
The use of the cpu_logical_map[] array is only relevant for MIPS based
platform where this driver is used as a first level interrupt controller
and contains multiple register groups to map with an associated CPU.
On ARM/ARM64 based systems this interrupt controller is present and used
as a second level interrupt controller hanging off the ARM GIC. That
copy of the interrupt controller contains a single group, resulting in
the intc->cpus[] array to be of size 1.
Things happened to work in that case because we install that interrupt
controller as a chained handler which does not allow it to be affine to
any CPU but the boot CPU which happens to be 0, therefore we never
de-reference past intc->cpus[] but with the current code in place, we do
leave a chance of de-referencing the array past its bounds.
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20211020184859.2705451-5-f.fainelli@gmail.com
Diffstat (limited to 'drivers/irqchip/irq-bcm6345-l1.c')
0 files changed, 0 insertions, 0 deletions