Re: [PATCH 0/1] x2apic implementation for kvm

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday 25 May 2009 14:13:23 Gleb Natapov wrote:
> On Mon, May 25, 2009 at 02:08:26PM +0800, Sheng Yang wrote:
> > On Friday 22 May 2009 01:37:53 Gleb Natapov wrote:
> > > This is implementation of x2apic for KVM that I wrote a while ago.
> > > Unfortunately there is no guest that can take advantage of it since
> > > Linux doesn't (yet?) use x2apic if interrupt remapping is not enabled
> > > and I don't feel like implement interrupt remapping device :)
> > >
> > > Re-based to latest kvm tree for your viewing pleasure and feedback.
> >
> > Yeah... x2apic is for interrupt remapping, and interrupt remapping is for
> > VT-d engine. So if we don't want to virtualize VT-d engine and interrupt
> > remapping, x2apic is useless for the guest... And VT-d engine(and related
> > things) virtualization is far from our scope now...
>
> Can you explain why "x2apic is for interrupt remapping"? I can understand
> why interrupt remapping is needed to use x2apic in certain circumstances
> (apic ids > 256). x2apic has better virtualizable interface and that
> is why we want to emulate it. Can you name one technical reason why it
> can't be done in a context of KVM?

As you know, x2apic is for apic id > 256. So, at least on the real machine, if 
there is no interrupt remapping, x2apic almost can't take much advantage, 
because IOAPIC and MSI/MSI-X delivery still using 8bit apic id, so any 
external interrupt can't benefit from it(though IPI can benefit some, and 
maybe some gain from MSR rather than MMIO). And this is the main purpose for 
x2apic, that's why Linux kernel limited x2apic using with interrupt remapping.

I am not sure the things looks like in the context of KVM. I think mostly even 
you virtualize it, it can't replace lapic, for guest won't use it(I am not 
sure about the Windows). Can you explain more detail?

-- 
regards
Yang, Sheng
--
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

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux