On 08/07/2011 08:21 AM, Hans de Goede wrote:
To let the chardev now we're ready start receiving data. This is necessary
with the spicevmc chardev to get it registered with the spice-server.

Signed-off-by: Hans de Goede<hdego...@redhat.com>
---
  usb-redir.c |    3 +++
  1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/usb-redir.c b/usb-redir.c
index e212993..ec88c0b 100644
--- a/usb-redir.c
+++ b/usb-redir.c
@@ -809,6 +809,8 @@ static int usbredir_initfn(USBDevice *udev)

      qemu_chr_add_handlers(dev->cs, usbredir_chardev_can_read,
                            usbredir_chardev_read, usbredir_chardev_event, dev);
+    /* Let the other side know we are ready */
+    qemu_chr_guest_open(dev->cs);


You should do guest_open before adding handlers.

Regards,

Anthony Liguori


      return 0;
  }
@@ -830,6 +832,7 @@ static void usbredir_handle_destroy(USBDevice *udev)
  {
      USBRedirDevice *dev = DO_UPCAST(USBRedirDevice, dev, udev);

+    qemu_chr_guest_close(dev->cs);
      qemu_chr_close(dev->cs);
      /* Note must be done after qemu_chr_close, as that causes a close event */
      qemu_bh_delete(dev->open_close_bh);


Reply via email to