Gleb Natapov <gleb@xxxxxxxxxx> writes: > On Sat, Jul 04, 2009 at 02:35:30AM -0700, Eric W. Biederman wrote: >> Ingo Molnar <mingo@xxxxxxx> writes: >> >> > * Suresh Siddha <suresh.b.siddha@xxxxxxxxx> wrote: >> > >> >> On Wed, 2009-07-01 at 06:30 -0700, Gleb Natapov wrote: >> >> > KVM would like to provide x2APIC interface to a guest without emulating >> >> > interrupt remapping device. The reason KVM prefers guest to use x2APIC >> >> > is that x2APIC interface is better virtualizable and provides better >> >> > performance than mmio xAPIC interface: >> >> > >> >> > - msr exits are faster than mmio (no page table walk, emulation) >> >> > - no need to read back ICR to look at the busy bit >> >> > - one 64 bit ICR write instead of two 32 bit writes >> >> > - shared code with the Hyper-V paravirt interface >> >> > >> >> > Included patch changes x2APIC enabling logic to enable it even if IR >> >> > initialization failed, but kernel runs under KVM and no apic id is >> >> > greater than 255 (if there is one spec requires BIOS to move to x2apic >> >> > mode before starting an OS). >> >> > >> >> > Signed-off-by: Gleb Natapov <gleb@xxxxxxxxxx> >> >> >> >> Acked-by: Suresh Siddha <suresh.b.siddha@xxxxxxxxx> >> > >> > Now, since this affects core x86 APIC code non-trivially so should >> > submitted to and go via the x86 tree. (Can prepare a special branch >> > with just this change if KVM tree wants/needs to pull it before >> > v2.6.32.) >> >> Please don't separate the x2apic code from the dmar code for this >> reason. >> >> Supporting hotplug cpus with ioapics is torture. >> > What is the connection between this patch and cpu hotplug? When I asked if cpu hotplug was a supported and more or less common feature of kvm I was told it was. Good cpu hotplug today means supporting interrupt remapping. (The code you are disabling for kvm). Therefore I don't see the point of supporting one without the other. Especially if we don't have a case where on real hardware we need to split the support. Eric -- 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