On Tue, 2019-02-26 at 12:38 +0100, Paolo Bonzini wrote:
On 26/02/19 10:09, Dr. David Alan Gilbert wrote:
But if we can find some mechanisms to communicate the MSI vectors chosen by the guest kernel down to the hypervisor about a device, we could definitely get rid of IOAPIC, hence reaching the end goal I'm talking about here. Just note that ACPI would be a good way for the guest to communicate those information with the VMM.
Would a new ACPI mechanism really be any easy than some really basic PCI? You don't really need to provide a true PCI hierarchy or anything.
Yeah, I don't see the problem with configuring MSI via the PCI configuration space. Being able to use MSI is just one more reason to drop virtio-mmio and switch to virtio-pci.
Yes you're right, and if you go all the way with PCI, you solve a lot of issues. But let's say you don't have PCI support, you need a way to notify your guest about things like hotplug, and you do so using a GED or GPE ACPI device. In that case, we still want to get rid of the IOAPIC dependency and make sure those ACPI devices would support MSI.
(Without IOAPIC, the PCI devices would not be able to serve INTX interrupts, but that's not a problem for most modern devices).
Yes but that's not a problem if you consider using only modern devices.
Paolo