|
From: | Gerd Hoffmann |
Subject: | [Qemu-devel] Re: [PATCH 2/2] virtio: enable msi-x for console+balloon |
Date: | Mon, 07 Dec 2009 12:24:02 +0100 |
User-agent: | Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.4pre) Gecko/20090922 Fedora/3.0-3.9.b4.fc12 Lightning/1.0pre Thunderbird/3.0b4 |
On 12/07/09 11:59, Michael S. Tsirkin wrote:
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.
Works only of the real hardware we emulate can do MSI-X too, otherwise guests simply wouldn't use it. I think the only case where this could work out is e1000, newer revisions can do MSI-X. Maybe also the upcoming megasas emulation Hannes is working on.
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 ...
Yes. Three for balloon, but that can easily changed to two.
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.
Ah, *that* is the reason for the separate config interrupt. Does the in-kernel injection matter for balloon+console? I'd expect only virtio-net needs that when it is configured with vhost?
cheers Gerd
[Prev in Thread] | Current Thread | [Next in Thread] |