[libvirt] Libvirt and qemu multiqueue net

Laine Stump laine at laine.org
Tue Mar 12 16:37:40 UTC 2013


On 03/12/2013 06:17 AM, Michal Privoznik wrote:
> It's been a while since qemu added support for multiqueue virtio-net.
> For more info follow [1]. From usage POV, libvirt is required to pass
> multiple FDs:
>
> qemu-kvm -netdev tap,id=hn0,fds=x:y:...:z,vhost=on,vhostfds=a:b:...:c
> -device virtio-net-pci,netdev=hn0,vectors=N ...
>
> where count(x:...:z) = M. We are strongly advised to use 1:1 ratio => M=N.
>
> The FDs for 'fds' argument can be obtained via:
>
>     fd1 = open("/dev/net/tun")
>     ioctl(fd1, TUNSETIFF, "tap")
>     fd2 = open("/dev/net/tun")
>     ioctl(fd2, TUNATTACHQUEUE, "tap")
>
> And what I am wondering about is, how to expose this to XML. Or do we
> even want to expose this instead of some smart automatic setting? There
> are not any other configurable knobs right now, but they may come in the
> future.

Well, there is the basic option to turn vhost-net on and off :-)

I think this can be just an attribute of <driver>:

    <driver name='vhost' queues='5'/>

(we're already using driver for vhost vs. qemu, so this seems a natural
place to add it.)




More information about the libvir-list mailing list