[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] Add USB sys file-system support (v2)
From: |
Jason Wessel |
Subject: |
Re: [Qemu-devel] [PATCH] Add USB sys file-system support (v2) |
Date: |
Fri, 05 Sep 2008 08:30:23 -0500 |
User-agent: |
Thunderbird 2.0.0.16 (X11/20080724) |
TJ wrote:
> Revision 2.
>
> I realised I'd made a major programming boo-boo despite knowing better -
> requesting an allocation of memory in the host USB file-system scan
> function, forgetting that the function isn't just called once but
> repeatedly. That would have led to orphaned memory allocations each time
> a USB scan or open operation occurred - baaad!
>
> I've also changed the logic so it only scans for the USB file-system
> type the first time. After that it works off stored values.
>
>
Perhaps there is more work to do with this patch, or there are other
pieces still pending?
I tried out the patch because it looked reasonably interesting on ubuntu
7.10 64bit, and looked like a nice way to attach a local USB device, but
it did not quite work.
IE:
(qemu) info usbhost
Device 3.2, speed 12 Mb/s
Class 00: USB device 067b:2303, USB-Serial Controller
The first thing I tried was using it with the vendor/product id and it
failed immediately.
qemu ... -usb -usbdevice host:067b:2303
Warning: could not add USB device host:067b:2303
Then I tried using it with bus.addr syntax:
qemu ... -usb -usbdevice host:003.002
husb: open device 3.2
husb: opened /dev/bus/usb/003/002
husb: config #1 need -1
husb: 1 interfaces claimed for configuration -1
husb: grabbed usb device 3.2
usb_linux_update_endp_table: Broken pipe
Warning: could not add USB device host:003.002
It turns out that it is failing on the ioctl in usb-linux.c
541 ct.bRequestType = USB_DIR_IN | USB_RECIP_INTERFACE;
542 ct.bRequest = USB_REQ_GET_INTERFACE;
543 ct.wValue = 0;
544 ct.wIndex = interface;
545 ct.wLength = 1;
546 ct.data = &alt_interface;
547 ct.timeout = 50;
548
549 ret = ioctl(s->fd, USBDEVFS_CONTROL, &ct);
550 if (ret < 0) {
551 perror("usb_linux_update_endp_table");
552 return 1;
553 }
I can see that some of the ioctls succeed so perhaps it is partially
working. Any ideas around why this might be failing? I had not ever
looked at the qemu usb code before, but the -1 for the configuration did
look a bit suspicious .
Cheers,
Jason.
- [Qemu-devel] [PATCH] Add USB sys file-system support, TJ, 2008/09/04
- [Qemu-devel] [PATCH] Add USB sys file-system support (v2), TJ, 2008/09/04
- Re: [Qemu-devel] [PATCH] Add USB sys file-system support (v2),
Jason Wessel <=
- [Qemu-devel] [PATCH] Add USB sys file-system support (v3), TJ, 2008/09/05
- [Qemu-devel] Re: [PATCH] Add USB sys file-system support (v3), Jason Wessel, 2008/09/08
- [Qemu-devel] [PATCH] Add USB sys file-system support (v4), TJ, 2008/09/17
- [Qemu-devel] Re: [PATCH] Add USB sys file-system support (v4), Anthony Liguori, 2008/09/17
- [Qemu-devel] [PATCH] Add USB sys file-system support (v5), TJ, 2008/09/17
- Re: [Qemu-devel] [PATCH] Add USB sys file-system support (v5), Rick Vernam, 2008/09/22