qemu-ppc
[Top][All Lists]
Advanced

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

Re: [Qemu-ppc] [PATCH] spapr: skip adding usb keyboard/mouse in case of


From: Andreas Färber
Subject: Re: [Qemu-ppc] [PATCH] spapr: skip adding usb keyboard/mouse in case of -nodefaults
Date: Thu, 03 Apr 2014 19:01:30 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.3.0

Am 03.04.2014 18:56, schrieb Nikunj A Dadhania:
> The following commit caused the regression in qemu-system-ppc64
> 
> 7effdaa3: spapr: Fix return value of vga initialization
> d44229c5: Fix vga_interface_type for command line argument '-device VGA'
> 
> Even when -nodefaults was provided, USB Keyboard and Mouse was added
> to the machine. This breaks libvirt which uses -nodefaults and adds
> the keyboard and mouse separately. The machine got 2 USB Keyboards
> and 2 USB Mouses.
> 
> CC: Paolo Bonzini <address@hidden>
> CC: Mark Wu <address@hidden>
> CC: Andreas Färber <address@hidden>
> Signed-off-by: Nikunj A Dadhania <address@hidden>
> ---
>  hw/ppc/spapr.c          |  6 +++++-
>  include/sysemu/sysemu.h |  1 +
>  vl.c                    | 10 ++++++++--
>  3 files changed, 14 insertions(+), 3 deletions(-)
> 
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index a11e121..3095626 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -1328,7 +1328,11 @@ static void ppc_spapr_init(QEMUMachineInitArgs *args)
>  
>      if (usb_enabled(spapr->has_graphics)) {
>          pci_create_simple(phb->bus, -1, "pci-ohci");
> -        if (spapr->has_graphics) {
> +        /*
> +         * For VGA/VNC, by default add usb keyboard/mouse, if -nodefaults
> +         * provided skip adding usb keyboard/mouse
> +         */
> +        if (spapr->has_graphics && qemu_has_defaults()) {
>              usbdevice_create("keyboard");
>              usbdevice_create("mouse");
>          }
> diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
> index ba5c7f8..8e90ad0 100644
> --- a/include/sysemu/sysemu.h
> +++ b/include/sysemu/sysemu.h
> @@ -200,6 +200,7 @@ DeviceState *get_boot_device(uint32_t position);
>  QemuOpts *qemu_get_machine_opts(void);
>  
>  bool usb_enabled(bool default_usb);
> +bool qemu_has_defaults(void);
>  
>  extern QemuOptsList qemu_legacy_drive_opts;
>  extern QemuOptsList qemu_common_drive_opts;
> diff --git a/vl.c b/vl.c
> index 9975e5a..6bf37a2 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -977,8 +977,14 @@ static void parse_name(QemuOpts *opts)
>  
>  bool usb_enabled(bool default_usb)
>  {
> -    return qemu_opt_get_bool(qemu_get_machine_opts(), "usb",
> -                             has_defaults && default_usb);
> +  return qemu_opt_get_bool(qemu_get_machine_opts(), "usb",
> +                        has_defaults && default_usb);
> +}
> +
> +bool qemu_has_defaults(void)
> +{
> +  fprintf(stderr, "has_d %d\n", has_defaults);

Debugging leftover surely?

Cheers,
Andreas

> +  return has_defaults;
>  }
>  
>  #ifndef _WIN32
> 


-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

[Prev in Thread] Current Thread [Next in Thread]