lkml.org 
[lkml]   [2009]   [Jun]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH v3] enable x2APIC without interrupt remapping under KVM
    Gleb Natapov <gleb@redhat.com> writes:

    > On Tue, Jun 30, 2009 at 02:24:05AM -0700, Eric W. Biederman wrote:
    >> Gleb Natapov <gleb@redhat.com> writes:
    >>
    >> > 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).
    >>
    >>
    >> How common is hotplug hardware in kvm? In particular hotplug cpus?
    >>
    > It works for Linux guests.

    >
    >> To support that seriously you need interrupt remapping.
    >>
    > Can you explain why?

    Because ioapics don't fully function according to spec,
    and the interrupt code on the hotplug path is a horrible
    terrible broken hack for ioapics.

    It is better than nothing but it certainly is not something
    I would expect to work all of the time.

    Interrupt remapping is the one case where we have hardware
    that works according to spec and that works reasonably well.

    Eric


    \
     
     \ /
      Last update: 2009-06-30 18:47    [W:2.403 / U:0.436 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site