[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[xen master] libxl: only query VNC when enabled



commit 1b810a9d5a39230e76073b1a753cd2c34ded65fc
Author:     Jason Andryuk <jandryuk@xxxxxxxxx>
AuthorDate: Thu Oct 1 19:53:37 2020 -0400
Commit:     Wei Liu <wl@xxxxxxx>
CommitDate: Sun Oct 11 20:59:16 2020 +0000

    libxl: only query VNC when enabled
    
    QEMU without VNC support (configure --disable-vnc) will return an error
    when VNC is queried over QMP since it does not recognize the QMP
    command.  This will cause libxl to fail starting the domain even if VNC
    is not enabled.  Therefore only query QEMU for VNC support when using
    VNC, so a VNC-less QEMU will function in this configuration.
    
    'goto out' jumps to the call to device_model_postconfig_done(), the
    final callback after the chain of vnc queries.  This bypasses all the
    QMP VNC queries.
    
    Signed-off-by: Jason Andryuk <jandryuk@xxxxxxxxx>
    Acked-by: Wei Liu <wl@xxxxxxx>
---
 tools/libs/light/libxl_dm.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/tools/libs/light/libxl_dm.c b/tools/libs/light/libxl_dm.c
index a944181781..d1ff35dda3 100644
--- a/tools/libs/light/libxl_dm.c
+++ b/tools/libs/light/libxl_dm.c
@@ -3140,6 +3140,7 @@ static void device_model_postconfig_chardev(libxl__egc 
*egc,
 {
     EGC_GC;
     libxl__dm_spawn_state *dmss = CONTAINER_OF(qmp, *dmss, qmp);
+    const libxl_vnc_info *vnc = libxl__dm_vnc(dmss->guest_config);
     const libxl__json_object *item = NULL;
     const libxl__json_object *o = NULL;
     int i = 0;
@@ -3197,6 +3198,9 @@ static void device_model_postconfig_chardev(libxl__egc 
*egc,
         if (rc) goto out;
     }
 
+    if (!vnc)
+        goto out;
+
     qmp->callback = device_model_postconfig_vnc;
     rc = libxl__ev_qmp_send(egc, qmp, "query-vnc", NULL);
     if (rc) goto out;
--
generated by git-patchbot for /home/xen/git/xen.git#master



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.