diff mbox

[PATCH+SoB] unbreak usb pass-through on linux.

Message ID 1253890528-4139-1-git-send-email-kraxel@redhat.com
State Superseded
Headers show

Commit Message

Gerd Hoffmann Sept. 25, 2009, 2:55 p.m. UTC
Changes:
  * Re-add the 'dev->fd = fd;' line which the qdev patches dropped
    by mistake.
  * call qdev_init() so the newly created usb device is plugged into
    a usb port and thus actually visible to the guest.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 usb-linux.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

Comments

Luiz Capitulino Sept. 25, 2009, 3:41 p.m. UTC | #1
On Fri, 25 Sep 2009 16:55:28 +0200
Gerd Hoffmann <kraxel@redhat.com> wrote:

> Changes:
>   * Re-add the 'dev->fd = fd;' line which the qdev patches dropped
>     by mistake.
>   * call qdev_init() so the newly created usb device is plugged into
>     a usb port and thus actually visible to the guest.
> 
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>

 Simple tests work for me, thanks a lot Gerd.

Tested-by: Luiz Capitulino <lcapitulino@redhat.com>

> ---
>  usb-linux.c |    2 ++
>  1 files changed, 2 insertions(+), 0 deletions(-)
> 
> diff --git a/usb-linux.c b/usb-linux.c
> index c434e4f..2b7b092 100644
> --- a/usb-linux.c
> +++ b/usb-linux.c
> @@ -922,6 +922,7 @@ static USBDevice *usb_host_device_open_addr(int bus_num, int addr, const char *p
>  
>      dev->bus_num = bus_num;
>      dev->addr = addr;
> +    dev->fd = fd;
>  
>      /* read the device description */
>      dev->descr_len = read(fd, dev->descr, sizeof(dev->descr));
> @@ -979,6 +980,7 @@ static USBDevice *usb_host_device_open_addr(int bus_num, int addr, const char *p
>  
>      hostdev_link(dev);
>  
> +    qdev_init(&d->qdev);
>      return (USBDevice *) dev;
>  
>  fail:
diff mbox

Patch

diff --git a/usb-linux.c b/usb-linux.c
index c434e4f..2b7b092 100644
--- a/usb-linux.c
+++ b/usb-linux.c
@@ -922,6 +922,7 @@  static USBDevice *usb_host_device_open_addr(int bus_num, int addr, const char *p
 
     dev->bus_num = bus_num;
     dev->addr = addr;
+    dev->fd = fd;
 
     /* read the device description */
     dev->descr_len = read(fd, dev->descr, sizeof(dev->descr));
@@ -979,6 +980,7 @@  static USBDevice *usb_host_device_open_addr(int bus_num, int addr, const char *p
 
     hostdev_link(dev);
 
+    qdev_init(&d->qdev);
     return (USBDevice *) dev;
 
 fail: