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(a)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.
1:
https://bugzilla.redhat.com/show_bug.cgi?id=1005626
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(a)redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list