qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] usb-hid: activate usb tablet / mouse after migr


From: TeLeMan
Subject: Re: [Qemu-devel] [PATCH] usb-hid: activate usb tablet / mouse after migration.
Date: Thu, 13 Oct 2011 10:09:24 +0800

On Wed, Oct 12, 2011 at 19:30, Gerd Hoffmann <address@hidden> wrote:
> qemu uses the ps/2 mouse by default.  The usb tablet (or mouse) is
> activated as soon as qemu sees some guest activity on the device,
> i.e. polling for HID events.  That used to work fine for both fresh
> boot and migration.
It does not fix usb tablet/mouse when starting vm directly from snapshot.

> Remote wakeup support changed the picture though: There will be no
> polling after migration in case the guest suspended the usb bus,
> waiting for wakeup events.  Result is that the ps/2 mouse stays
> active.
>
> Fix this by activating the usb tablet / mouse in post_load() in case
> the guest enabled remote wakeup.
>
> Signed-off-by: Gerd Hoffmann <address@hidden>
> ---
>  hw/usb-hid.c |   11 +++++++++++
>  1 files changed, 11 insertions(+), 0 deletions(-)
>
> diff --git a/hw/usb-hid.c b/hw/usb-hid.c
> index 7c564b6..997f828 100644
> --- a/hw/usb-hid.c
> +++ b/hw/usb-hid.c
> @@ -520,10 +520,21 @@ static int usb_keyboard_initfn(USBDevice *dev)
>     return usb_hid_initfn(dev, HID_KEYBOARD);
>  }
>
> +static int usb_ptr_post_load(void *opaque, int version_id)
> +{
> +    USBHIDState *s = opaque;
> +
> +    if (s->dev.remote_wakeup) {
> +        hid_pointer_activate(&s->hid);
> +    }
> +    return 0;
> +}
> +
>  static const VMStateDescription vmstate_usb_ptr = {
>     .name = "usb-ptr",
>     .version_id = 1,
>     .minimum_version_id = 1,
> +    .post_load = usb_ptr_post_load,
>     .fields = (VMStateField []) {
>         VMSTATE_USB_DEVICE(dev, USBHIDState),
>         VMSTATE_HID_POINTER_DEVICE(hid, USBHIDState),
> --
> 1.7.1
>
>
>



reply via email to

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