On Mon, 2007-06-25 at 18:08 -0400, Avi Kivity wrote:
> There's a slight issue that Windows with the ACPI HAL 
> is dog slow when virtulalized, but maybe we can find another HAL that 
> supports ACPI but doesn't use the APIC.

Is this in reference to the frequent TPR updates, or is there something
else that is also slow with ACPI enabled?

> 
> > Note that there is another standard that would allow us to use built-in
> > routing without ACPI/IOAPIC: MSI.  I know the battle over
> > virtual-bus-rendering is still raging w.r.t. to PCI or not-PCI.  But I
> > will point out that if we do use PCI, setting the PV devices up as MSI
> > capable in the config space potentially eliminates the need to also wire
> > them to an IOAPIC.  They will get their vector data from the MSI setup
> > and can then send APIC messages directly.  (I think there is some
> > confusion about how we can do MSI later in this thread...I will reply to
> > those mails separately)
> >   
> 
> MSI is also a good solution; but do all semi-modern guest OSes support it?

I can't say for sure, but I would guess "yes" because IIUC PCI-Express
only uses MSI (or at least heavily prefers it).


> No, a single ioapic in the kernel, with one interrupt line that is 
> shared between a kernel-provided device and a userspace-provided 
> device.  The kernel would need to provide the OR function that sharing 
> implies.

Got it.  I was confused earlier.

> 
> 
> > If we do end up needing the IOAPIC in the
> > kernel and userspace, I would suggest using two IOAPICs (we just need to
> > update the ACPI tables to say there are two) so that they can operate
> > independently.  This should be supportable from a virtual system
> > infrastructure standpoint, and is much cleaner IMHO.  If you were
> > talking about a different scenario. please clarify
> 
> I was talking about a different scenario, but your solution is cleaner 
> (though it involves more hand-dirtying with the ACPI tables).  Basically 
> each PCI IRQ would have its own dedicated line.

Right. Or more precisely, *anything* you want can have its own line ;)
IIUC a standard IOAPIC has 24 input lines, so you just need one for
every 24 devices allocated.




-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to