2016-04-28 17:18+0800, Peter Xu: > On Thu, Apr 28, 2016 at 09:19:28AM +0200, Jan Kiszka wrote: >> Instead of fiddling with irq routes for the IOAPIC - where we don't need >> it -, I would suggest to do the following: Send IOAPIC events via >> kvm_irqchip_send_msi to the kernel. Only irqfd users (vhost, vfio) >> should use the pattern you are now applying to the IOAPIC: establish >> static routes as an irqfd is set up, and that route should be translated >> by the iommu first, register an IEC notifier to update any affected >> route when the iommu translation changes. > > Yes, maybe that's the right thing to do. Or say, when split irqchip, > IOAPIC can avoid using GSI routes any more. If with that, I should > also remove lots of things, like: IEC notifiers for IOAPIC, and all > things related to msi route sync-up in IOAPIC codes with KVM (so I > suppose we will save 24 gsi route entries for KVM, which sounds > good).
Sadly, we can't get rid of those GSI routes. KVM uses them to decide whether it should forward EOI to userspace. And QEMU also has to remap them, because KVM uses dest_id for that decision.