[RFC PATCH] irqchip/sifive-plic: Fix getting wrong chip_data when interrupt is hierarchy
Thomas Gleixner
tglx at linutronix.de
Sun Nov 1 11:52:06 EST 2020
On Sun, Nov 01 2020 at 12:10, Marc Zyngier wrote:
> On Thu, 29 Oct 2020 10:37:38 +0800, Greentime Hu wrote:
>> This oops is caused by a wrong chip_data and it is because plic_irq_unmask
>> uses irq_get_chip_data(irq_data->irq) to get the chip_data. However it may
>> get another irq_data with the same irq_data->irq if it is hierarchy.
>>
>> In this case, it will get irq_data of sifive_gpio_irqchip instead of
>> plic_chip so that it will get a wrong chip_data and then the wrong lmask
>> of it to cause this oops.
>>
>> [...]
>
> Applied to irq/irqchip-next, thanks!
That should go into urgent, the offending commit is in Linus tree already
Thanks,
tglx
More information about the linux-riscv
mailing list