diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2018-12-18 18:37:27 +0100 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2018-12-18 18:37:27 +0100 |
commit | ff3730a497cd636e53d4cac5cbb9652b76de9ef5 (patch) | |
tree | a25b8f0759cfdb044474a2d88707fe5e3ac491c0 /drivers/base | |
parent | c5f48c0a7aa1a8c82d81cdf27e63aa0a5544c6e6 (diff) | |
parent | fb94109b764e7676fa63834b9033ba97175877a0 (diff) | |
download | linux-stable-ff3730a497cd636e53d4cac5cbb9652b76de9ef5.tar.gz linux-stable-ff3730a497cd636e53d4cac5cbb9652b76de9ef5.tar.bz2 linux-stable-ff3730a497cd636e53d4cac5cbb9652b76de9ef5.zip |
Merge tag 'irqchip-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into irq/core
Pull irqchip updates from Marc Zyngier:
- A bunch of new irqchip drivers (RDA8810PL, Madera, imx-irqsteer)
- Updates for new (and old) platforms (i.MX8MQ, F1C100s)
- A number of SPDX cleanups
- A workaround for a very broken GICv3 implementation
- A platform-msi fix
- Various cleanups
Diffstat (limited to 'drivers/base')
-rw-r--r-- | drivers/base/platform-msi.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/base/platform-msi.c b/drivers/base/platform-msi.c index f39a920496fb..8da314b81eab 100644 --- a/drivers/base/platform-msi.c +++ b/drivers/base/platform-msi.c @@ -368,14 +368,16 @@ void platform_msi_domain_free(struct irq_domain *domain, unsigned int virq, unsigned int nvec) { struct platform_msi_priv_data *data = domain->host_data; - struct msi_desc *desc; - for_each_msi_entry(desc, data->dev) { + struct msi_desc *desc, *tmp; + for_each_msi_entry_safe(desc, tmp, data->dev) { if (WARN_ON(!desc->irq || desc->nvec_used != 1)) return; if (!(desc->irq >= virq && desc->irq < (virq + nvec))) continue; irq_domain_free_irqs_common(domain, desc->irq, 1); + list_del(&desc->list); + free_msi_entry(desc); } } |