]> git.baikalelectronics.ru Git - kernel.git/commit
irqchip/gic-v3-its: Fix LPI release for Multi-MSI devices
authorMarc Zyngier <maz@kernel.org>
Thu, 5 Sep 2019 13:56:47 +0000 (14:56 +0100)
committerMarc Zyngier <maz@kernel.org>
Thu, 5 Sep 2019 15:03:48 +0000 (16:03 +0100)
commit59d482c75dcbb4fee002d220f5197084abb4e691
treeceb525e1c9995fda422ce1cdb1213327615db6e1
parent6f54098fff641fb8646cf8b783dbc9303e4ff4ff
irqchip/gic-v3-its: Fix LPI release for Multi-MSI devices

When allocating a range of LPIs for a Multi-MSI capable device,
this allocation extended to the closest power of 2.

But on the release path, the interrupts are released one by
one. This results in not releasing the "extra" range, leaking
the its_device. Trying to reprobe the device will then fail.

Fix it by releasing the LPIs the same way we allocate them.

Fixes: 1ad1dd0dd05b ("irqchip/gic-v3-its: Align PCI Multi-MSI allocation on their size")
Reported-by: Jiaxing Luo <luojiaxing@huawei.com>
Tested-by: John Garry <john.garry@huawei.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/f5e948aa-e32f-3f74-ae30-31fee06c2a74@huawei.com
drivers/irqchip/irq-gic-v3-its.c