[libvirt] question for <interface> in ethernet type and multiple queues in KVM (start VM failed)

Gonglei (Arei) arei.gonglei at huawei.com
Wed Mar 26 09:31:17 UTC 2014


> >
> >      I use ethernet vif for VM (libvirt 1.1.0  qemu 1.5.1). xml as such
> >
> >          <interface type='ethernet'>
> >              <script path='' />
> >              <target dev='tap_mq'/>
> >              <mac address='52:54:00:19:9e:4e'/>
> >              <model type='virtio' />
> >              <driver name='vhost' queues='2'/>
> >          </interface>
> >
> >      tap_mq is a tap device with multi_queue property which was created
> on host by ip command, such as follows
> >      #ip tuntap add tap_mq mode tap multi_queue
> >
> >      I want to use multiple queue feature for this vif so I set queues='2' in
> xml.
> >
> >      When start VM , an error occurs
> >      "error: unsupported configuration: Multiqueue network is not
> supported for: ethernet".
> >      This error is reported from function qemuBuildInterfaceCommandLine
> >
> >      /* Currently nothing besides TAP devices supports multiqueue. */
> >      if (net->driver.virtio.queues > 0 &&
> >          !(actualType == VIR_DOMAIN_NET_TYPE_NETWORK ||
> >            actualType == VIR_DOMAIN_NET_TYPE_BRIDGE)) {
> >          virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
> >                         _("Multiqueue network is not supported
> for: %s"),
> >                         virDomainNetTypeToString(actualType));
> >          return -1;
> >      }
> >
> >      The comment specifies that only TAP device supports multiqueue. But
> VIR_DOMAIN_NET_TYPE_ETHERNET is also TAP device I think.
> 
> Even though the device is TAP device indeed, it's not from the libvirt
> POV. Libvirt doesn't examine the target dev to see if it is TAP,
> physical NIC, sit, ... whatever.

Yep, but I think libvirt should provide this ability which process multi_queue of ethernet type.
And the result is guaranteed by the emulator, such as Qemu.
> 
> As always, patches are welcome :)
> 
> Michal

Best regards,
-Gonglei




More information about the libvir-list mailing list