Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

PCI/MSI: Make pci_host_common_probe() declare its reliance on MSI domains

The generic PCI host driver relies on MSI domains for MSIs to
be provided to its end-points. Make this dependency explicit.

This cures the warnings occuring on arm/arm64 VMs when booted
with PCI virtio devices and no MSI controller (no GICv3 ITS,
for example).

It is likely that other drivers will need to express the same
dependency.

Link: https://lore.kernel.org/r/20210330151145.997953-12-maz@kernel.org
Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Bjorn Helgaas <bhelgaas@google.com>

authored by

Marc Zyngier and committed by
Lorenzo Pieralisi
9ec37efb 94e89b14

+1
+1
drivers/pci/controller/pci-host-common.c
··· 79 79 80 80 bridge->sysdata = cfg; 81 81 bridge->ops = (struct pci_ops *)&ops->pci_ops; 82 + bridge->msi_domain = true; 82 83 83 84 return pci_host_probe(bridge); 84 85 }