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

Re: [Xen-devel] [PATCH for 4.5] xl: honor more top level vfb options



On Tue, 2014-01-28 at 15:38 +0000, Wei Liu wrote:
> Now that SDL and keymap options for VFB can also be specified in top
> level options. Documentation is also updated.
> 
> This fixes bug #31 and further possible problems.
> 
> Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx>
> Cc: Olaf Hering <olaf@xxxxxxxxx>

Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

> Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
> ---
>  docs/man/xl.cfg.pod.5    |    4 ++--
>  tools/libxl/xl_cmdimpl.c |   17 ++++++++++++++---
>  2 files changed, 16 insertions(+), 5 deletions(-)
> 
> diff --git a/docs/man/xl.cfg.pod.5 b/docs/man/xl.cfg.pod.5
> index 9941395..26991c0 100644
> --- a/docs/man/xl.cfg.pod.5
> +++ b/docs/man/xl.cfg.pod.5
> @@ -389,8 +389,8 @@ This options does not control the emulated graphics card 
> presented to
>  an HVM guest. See L<Emulated VGA Graphics Device> below for how to
>  configure the emulated device. If L<Emulated VGA Graphics Device> options
>  are used in a PV guest configuration, xl will pick up B<vnc>, B<vnclisten>,
> -B<vncpasswd>, B<vncdisplay> and B<vncunused> to construct paravirtual
> -framebuffer device for the guest.
> +B<vncpasswd>, B<vncdisplay>, B<vncunused>, B<sdl>, B<opengl> and
> +B<keymap> to construct paravirtual framebuffer device for the guest.
>  
>  Each B<VFB_SPEC_STRING> is a comma-separated list of C<KEY=VALUE>
>  settings, from the following list:
> diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
> index d93e01b..23d85f8 100644
> --- a/tools/libxl/xl_cmdimpl.c
> +++ b/tools/libxl/xl_cmdimpl.c
> @@ -721,6 +721,15 @@ static void parse_top_level_vnc_options(XLU_Config 
> *config,
>      xlu_cfg_get_defbool(config, "vncunused", &vnc->findunused, 0);
>  }
>  
> +static void parse_top_level_sdl_options(XLU_Config *config,
> +                                        libxl_sdl_info *sdl)
> +{
> +    xlu_cfg_get_defbool(config, "sdl", &sdl->enable, 0);
> +    xlu_cfg_get_defbool(config, "opengl", &sdl->opengl, 0);
> +    xlu_cfg_replace_string (config, "display", &sdl->display, 0);
> +    xlu_cfg_replace_string (config, "xauthority", &sdl->xauthority, 0);
> +}
> +
>  static void parse_config_data(const char *config_source,
>                                const char *config_data,
>                                int config_len,
> @@ -1657,9 +1666,13 @@ skip_vfb:
>                                      libxl_device_vkb_init);
>  
>              parse_top_level_vnc_options(config, &vfb->vnc);
> +            parse_top_level_sdl_options(config, &vfb->sdl);
> +            xlu_cfg_replace_string (config, "keymap", &vfb->keymap, 0);
>          }
> -    } else
> +    } else {
>          parse_top_level_vnc_options(config, &b_info->u.hvm.vnc);
> +        parse_top_level_sdl_options(config, &b_info->u.hvm.sdl);
> +    }
>  
>      if (c_info->type == LIBXL_DOMAIN_TYPE_HVM) {
>          if (!xlu_cfg_get_string (config, "vga", &buf, 0)) {
> @@ -1676,8 +1689,6 @@ skip_vfb:
>                                           LIBXL_VGA_INTERFACE_TYPE_CIRRUS;
>  
>          xlu_cfg_replace_string (config, "keymap", &b_info->u.hvm.keymap, 0);
> -        xlu_cfg_get_defbool(config, "sdl", &b_info->u.hvm.sdl.enable, 0);
> -        xlu_cfg_get_defbool(config, "opengl", &b_info->u.hvm.sdl.opengl, 0);
>          xlu_cfg_get_defbool (config, "spice", &b_info->u.hvm.spice.enable, 
> 0);
>          if (!xlu_cfg_get_long (config, "spiceport", &l, 0))
>              b_info->u.hvm.spice.port = l;



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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