qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] Re: [PATCH 2/2] virtio: enable msi-x for console+balloon


From: Michael S. Tsirkin
Subject: [Qemu-devel] Re: [PATCH 2/2] virtio: enable msi-x for console+balloon
Date: Mon, 7 Dec 2009 12:59:51 +0200
User-agent: Mutt/1.5.19 (2009-01-05)

On Mon, Dec 07, 2009 at 11:32:36AM +0100, Gerd Hoffmann wrote:
> On 12/07/09 10:37, Michael S. Tsirkin wrote:
>>
>> Sorry, I missed this the first time this was posted, and I see this in
>> staging now. Gerd, could you please explain the motivation for this
>> patch?
>>
>> I assumed console/baloon interrupts are not performance critical, so
>> would we not be better off using a shared interrupt for these,
>> reserving MSI vectors for where performance matters?
>
> The motivation was to move them away from the ioapic, to reduce irq  
> sharing of *other* devices which are connected to the ioapic too (i.e.  
> usb, e1000, lsi, ...)

Let's convert these to MSI instead?
This will likely pay off long term,
e.g. with nested virtualization.

>
> I'm aware that these are not performance-critical.  I've even tried to  
> use 'vectors=1' because of that.  I expected that would make them use  
> MSI-X, but a single IRQ line only.  Didn't work though.  Intentional?

So it's even worse, we are using up 2 vectors per device? Ugh ...

vectors=1 currently will make guest fall back on
regular interrupts, because IRQ field is 
undefined when MSI is used, so there is
no way to distinguish between vq interrupt
and config change. This last thing is important
because it allows fastpath injection of MSI
interrupts directly from kernel without
notifying qemu to update IRQ field.

Maybe we can define something special for a single
vector, but this is not a use case I considered
so will need guest changes ...

> cheers,
>   Gerd




reply via email to

[Prev in Thread] Current Thread [Next in Thread]