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

[xen staging] libxl: fix qemu-trad cmdline for no sdl/vnc case



commit 11b7f8725d5f992a384a6ca55a08e5e908c06d85
Author:     Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx>
AuthorDate: Mon May 18 21:54:47 2020 -0400
Commit:     Wei Liu <wl@xxxxxxx>
CommitDate: Mon May 18 23:23:44 2020 +0100

    libxl: fix qemu-trad cmdline for no sdl/vnc case
    
    When qemu is running in stubdomain, any attempt to initialize vnc/sdl
    there will crash it (on failed attempt to load a keymap from a file). If
    vfb is present, all those cases are skipped. But since
    b053f0c4c9e533f3d97837cf897eb920b8355ed3 "libxl: do not start dom0 qemu
    for stubdomain when not needed" it is possible to create a stubdomain
    without vfb and contrary to the comment -vnc none do trigger VNC
    initialization code (just skips exposing it externally).
    Change the implicit SDL avoiding method to -nographics option, used when
    none of SDL or VNC is enabled.
    
    Signed-off-by: Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx>
    Reviewed-by: Jason Andryuk <jandryuk@xxxxxxxxx>
    Acked-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
    Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx>
    Signed-off-by: Jason Andryuk <jandryuk@xxxxxxxxx>
---
 tools/libxl/libxl_dm.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
index f4007bbe50..b91e63db6f 100644
--- a/tools/libxl/libxl_dm.c
+++ b/tools/libxl/libxl_dm.c
@@ -734,14 +734,15 @@ static int libxl__build_device_model_args_old(libxl__gc 
*gc,
         if (libxl_defbool_val(vnc->findunused)) {
             flexarray_append(dm_args, "-vncunused");
         }
-    } else
+    } else if (!sdl) {
         /*
          * VNC is not enabled by default by qemu-xen-traditional,
-         * however passing -vnc none causes SDL to not be
-         * (unexpectedly) enabled by default. This is overridden by
-         * explicitly passing -sdl below as required.
+         * however skipping -vnc causes SDL to be
+         * (unexpectedly) enabled by default. If undesired, disable graphics at
+         * all.
          */
-        flexarray_append_pair(dm_args, "-vnc", "none");
+        flexarray_append(dm_args, "-nographic");
+    }
 
     if (sdl) {
         flexarray_append(dm_args, "-sdl");
--
generated by git-patchbot for /home/xen/git/xen.git#staging



 


Rackspace

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