]> asedeno.scripts.mit.edu Git - linux.git/commit
irqchip/gic-v3-mbi: Don't map the MSI page in mbi_compose_m{b, s}i_msg()
authorJulien Grall <julien.grall@arm.com>
Wed, 1 May 2019 13:58:23 +0000 (14:58 +0100)
committerMarc Zyngier <marc.zyngier@arm.com>
Fri, 3 May 2019 14:30:03 +0000 (15:30 +0100)
commit73103975425786ebdb6c4d2868ecf26f391fb77e
tree38988ca2b22ef18a68ce28d56e2ee288b978d43e
parent2cb3b16545495ee31dc9438f88232c2cfe44a41f
irqchip/gic-v3-mbi: Don't map the MSI page in mbi_compose_m{b, s}i_msg()

The functions mbi_compose_m{b, s}i_msg may be called from non-preemptible
context. However, on RT, iommu_dma_map_msi_msg() requires to be called
from a preemptible context.

A recent patch split iommu_dma_map_msi_msg in two new functions:
one that should be called in preemptible context, the other does
not have any requirement.

The GICv3 MSI driver is reworked to avoid executing preemptible code in
non-preemptible context. This can be achieved by preparing the MSI
mapping when allocating the MSI interrupt.

Signed-off-by: Julien Grall <julien.grall@arm.com>
[maz: only call iommu_dma_prepare_msi once, fix commit log accordingly]
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
drivers/irqchip/irq-gic-v3-mbi.c