Re: [PATCH v5] enable x2APIC without interrupt remapping under KVM

Eric W. Biederman
2009-07-04T09:35:32Z

Ingo Molnar <mingo@elte.hu> writes:

> * Suresh Siddha <suresh.b.siddha@intel.com> 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@redhat.com>
>>
>> Acked-by: Suresh Siddha <suresh.b.siddha@intel.com>
>
> 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.

Eric