On 2015-05-13 15:04, Paolo Bonzini wrote: > > > On 13/05/2015 12:25, Jan Kiszka wrote: >>>>> But perhaps when enabling KVM_SPLIT_IRQCHIP we can use args[0] to pass >>>>> the number of IOAPIC routes that will cause EOI exits? >>>> >>>> And you need to ensure that their routes can be found in the table >>>> directly. Given IOAPIC hotplug, that may not be the first ones there... >>> >>> Can you reserve a bunch of GSIs at the beginning of the GSI space, and >>> use rt->map[] to access them and build the EOI exit bitmap? >> >> Ideally, userspace could give the kernel a hint where to look. It has a >> copy of the routing table and manages it, no? > > Well, reserving space at the beginning of the table (and communicating > the size via KVM_ENABLE_CAP is a way to "give the kernel a hint where to > look". Perhaps not the best, but simple and supports hotplug to some > extent. But then we need at least a way to differentiate between IOAPIC and MSI routes so that the loop can actually stop when hitting the first non-IOAPIC entry. Right now, this is not possible. But even that would be a kind of ugly interface. Jan -- Siemens AG, Corporate Technology, CT RTC ITP SES-DE Corporate Competence Center Embedded Linux -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html