
On Tue, Mar 04, 2014 at 10:47:38AM +0100, Michal Privoznik wrote:
As I did previously in 4f588a1b46, libvirt needs to set virtio vectors. Previously, we were advised to use vectors=N, where
N = 2 * (number of queues) + 1
However, just recently this advisory has changed on the Multiquue wiki page [1] to:
N = 2 * (number of queues) + 2
1: http://www.linux-kvm.org/page/Multiqueue#Enable_MQ_feature
Signed-off-by: Michal Privoznik <mprivozn@redhat.com> ---
ACK
Notes: I've had some discussion with qemu developers that qemu is the best place to compute sane default [1]. And they agreed with me. However, until they will do so, libvirt should pass the correct value to make the whole feature work correctly.
I haven't read that, but making sure they'll make the change introspectable helps us decide whether we need to do that or not. Martin
src/qemu/qemu_command.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index ff0b2d5..18d0a64 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -5036,8 +5036,8 @@ qemuBuildNicDevStr(virDomainDefPtr def, } if (usingVirtio && vhostfdSize > 1) { /* As advised at http://www.linux-kvm.org/page/Multiqueue - * we should add vectors=2*N+1 where N is the vhostfdSize */ - virBufferAsprintf(&buf, ",mq=on,vectors=%d", 2 * vhostfdSize + 1); + * we should add vectors=2*N+2 where N is the vhostfdSize */ + virBufferAsprintf(&buf, ",mq=on,vectors=%d", 2 * vhostfdSize + 2); } if (vlan == -1) virBufferAsprintf(&buf, ",netdev=host%s", net->info.alias); -- 1.9.0
-- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list