Bug 1071888
Summary: | Libvirt should calculate and pass vectors parameter correclty (should be 2N+2) to qemu command line for multiqueue virtio net device | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | jason wang <jasowang> |
Component: | libvirt | Assignee: | Michal Privoznik <mprivozn> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Virtualization Bugs <virt-bugs> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | 7.0 | CC: | acathrow, bili, chhu, dyuan, honzhang, jasowang, jiahu, juzhang, lcui, michen, mjenner, mprivozn, mst, mzhan, narendra_k, qiguo, rhod, shyu, svenkatr, xwei, zhwang |
Target Milestone: | rc | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | libvirt-1.1.1-26.el7 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | 1066209 | Environment: | |
Last Closed: | 2014-06-13 12:21:14 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | 1066209 | ||
Bug Blocks: |
Comment 1
Michal Privoznik
2014-03-03 12:38:34 UTC
(In reply to Michal Privoznik from comment #1) > Jason, > > can you please update the linux-kvm.org wiki so I have something to point to? > > The http://www.linux-kvm.org/page/Multiqueue#Enable_MQ_feature page still > lists the old default. Thanks for the reminding. Have changed the wiki to use 2N+2. Patch proposed upstream: https://www.redhat.com/archives/libvir-list/2014-March/author.html Verified as below: Version: libvirt-1.1.1-26.el7.x86_64 qemu-kvm-rhev-1.5.3-52.el7.x86_64 kernel-3.10.0-105.el7.x86_64 1. Set queues=6, libvirt can pass 2*6+2 to vectors in qemu command line. [root@intel-e5530-8-2 ~]# virsh dumpxml test| grep interface -A8 <interface type='network'> <mac address='52:54:00:85:26:85'/> <source network='default'/> <target dev='vnet1'/> <model type='virtio'/> <driver name='vhost' queues='6'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> ... [root@intel-e5530-8-2 ~]# ps aux | grep test |grep -v grep| sed 's/-device/\n-device/g' | grep "virtio-net-pci" -device virtio-net-pci,mq=on,vectors=14,netdev=hostnet0,id=net0,mac=52:54:00:85:26:85,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 2. Set queues=1 or omitted this element, libvirt would not pass value to vectors in qemu command line, this is expected results from code patch. [root@intel-e5530-8-2 ~]# virsh dumpxml test| grep interface -A8 <interface type='network'> <mac address='52:54:00:85:26:85'/> <source network='default'/> <target dev='vnet1'/> <model type='virtio'/> <driver name='vhost'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> ... [root@intel-e5530-8-2 ~]# ps aux | grep test |grep -v grep| sed 's/-device/\n-device/g' | grep "virtio-net-pci" -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:85:26:85,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 We can get the expected result, changed to verified. This request was resolved in Red Hat Enterprise Linux 7.0. Contact your manager or support representative in case you have further questions about the request. |