]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu_process: graphics: setup listen types before ports are reserved/allocated
authorPavel Hrdina <phrdina@redhat.com>
Sat, 13 Aug 2016 19:29:38 +0000 (21:29 +0200)
committerPavel Hrdina <phrdina@redhat.com>
Wed, 17 Aug 2016 08:06:47 +0000 (10:06 +0200)
The code that setups listen types may change a listen type from address to
socket based on configuration from qemu.conf.  This needs to be done before we
reserve/allocate ports that won't be used.

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

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
src/qemu/qemu_process.c

index bbf6ef5604b7fea78d806ce35483b6377c6d4f4a..907da3045a6ede2f83de77607893bbd69495e7cf 100644 (file)
@@ -4215,6 +4215,13 @@ qemuProcessSetupGraphics(virQEMUDriverPtr driver,
     size_t i;
     int ret = -1;
 
+    for (i = 0; i < vm->def->ngraphics; i++) {
+        graphics = vm->def->graphics[i];
+
+        if (qemuProcessGraphicsSetupListen(driver, graphics, vm) < 0)
+            goto cleanup;
+    }
+
     if (allocate) {
         for (i = 0; i < vm->def->ngraphics; i++) {
             graphics = vm->def->graphics[i];
@@ -4229,9 +4236,6 @@ qemuProcessSetupGraphics(virQEMUDriverPtr driver,
 
         if (qemuProcessGraphicsAllocatePorts(driver, graphics, allocate) < 0)
             goto cleanup;
-
-        if (qemuProcessGraphicsSetupListen(driver, graphics, vm) < 0)
-            goto cleanup;
     }
 
     ret = 0;