[libvirt] [PATCH v2] qemu: check for vhostusers bandwidth

Roland Schulz schullzroll at gmail.com
Tue Sep 11 09:13:03 UTC 2018


Vhostuser doesn't support bandwidth and due to backwards compatibility
it was decided to just warn users instead of erroring out

https://bugzilla.redhat.com/show_bug.cgi?id=1524230

Signed-off-by: Roland Schulz <schullzroll at gmail.com>
---
 src/qemu/qemu_command.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index ff9589f593..011e2b45af 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -8244,6 +8244,8 @@ qemuBuildVhostuserCommandLine(virQEMUDriverPtr driver,
                               virQEMUCapsPtr qemuCaps,
                               unsigned int bootindex)
 {
+    virNetDevBandwidthPtr actualBandwidth = virDomainNetGetActualBandwidth(net);
+    virDomainNetType actualType = virDomainNetGetActualType(net);
     virQEMUDriverConfigPtr cfg = virQEMUDriverGetConfig(driver);
     char *chardev = NULL;
     char *netdev = NULL;
@@ -8257,6 +8259,13 @@ qemuBuildVhostuserCommandLine(virQEMUDriverPtr driver,
         goto cleanup;
     }
 
+    /* Warn if unsupported bandwidth requested */
+    if (actualBandwidth && !virNetDevSupportBandwidth(actualType)) {
+            VIR_WARN(_("setting bandwidth on interfaces of "
+                     "type '%s' is not implemented yet"),
+                     virDomainNetTypeToString(actualType));
+    }
+
     switch ((virDomainChrType)net->data.vhostuser->type) {
     case VIR_DOMAIN_CHR_TYPE_UNIX:
         if (!(chardev = qemuBuildChrChardevStr(logManager, secManager,
-- 
2.17.1




More information about the libvir-list mailing list