[libvirt] [PATCH v3 13/14] conf: fix virDomainDefFormatInternal for parallels

Michal Privoznik mprivozn at redhat.com
Fri Apr 10 12:01:01 UTC 2015


On 07.04.2015 22:35, Dmitry Guryanov wrote:
> We should add input devices with proper bus,
> not VIR_DOMAIN_INPUT_BUS_XEN.
> 
> Signed-off-by: Dmitry Guryanov <dguryanov at parallels.com>
> ---
>  src/conf/domain_conf.c | 14 ++++++++++----
>  1 file changed, 10 insertions(+), 4 deletions(-)
> 
> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> index b8a6b84..da81e72 100644
> --- a/src/conf/domain_conf.c
> +++ b/src/conf/domain_conf.c
> @@ -21176,12 +21176,18 @@ virDomainDefFormatInternal(virDomainDefPtr def,
>          /* If graphics is enabled, add the implicit mouse/keyboard */
>          if ((ARCH_IS_X86(def->os.arch)) || def->os.arch == VIR_ARCH_NONE) {
>              virDomainInputDef autoInput = {
> -                VIR_DOMAIN_INPUT_TYPE_MOUSE,
> -                STREQ(def->os.type, "hvm") ?
> -                VIR_DOMAIN_INPUT_BUS_PS2 : VIR_DOMAIN_INPUT_BUS_XEN,
> -                { .alias = NULL },
> +                .type = VIR_DOMAIN_INPUT_TYPE_MOUSE,
> +                .info = { .alias = NULL },
>              };
>  
> +            if (STREQ(def->os.type, "hvm"))
> +                autoInput.bus = VIR_DOMAIN_INPUT_BUS_PS2;
> +            else if (STREQ(def->os.type, "xen"))
> +               autoInput.bus = VIR_DOMAIN_INPUT_BUS_XEN;
> +            else if (STREQ(def->os.type, "exe") &&
> +                     def->virtType == VIR_DOMAIN_VIRT_PARALLELS)
> +                autoInput.bus = VIR_DOMAIN_INPUT_BUS_PARALLELS;
> +
>              if (virDomainInputDefFormat(buf, &autoInput, flags) < 0)
>                  goto error;
>  
> 

Unfortunately, other drivers rely on the XEN default. So I think this
should look something like:

if (hvm)
  bus = _PS2;
else if (exe && PARALLELS)
  bus = PARALLELS;
else
  bus = XEN;

Michal




More information about the libvir-list mailing list