On Sun, 5 Aug 2012, Tomas Sokorai wrote:

> Hi guys!
> 
> I think I might have hit a bug:
> 
> * Description of the issue *
> Continuous (variable time 1-10 mins) small bulk transfers (between 1-6
> bytes payload) either with libusb, or generic USB serial driver, leaves the
> app in uninterruptible wait state (i.e., hung).
> 
> The kernel hung task stack dump consistently show the USB stack getting stuck:

...

> All the stacks are consistent of getting stuck in usb_kill_urb().
> 
> * Environment *
> 
> This happens only in a OHCI-based system (AMD CPU, nVidia chipset),
> since if I test the same program and USB device in an Intel-based,
> EHCI laptop, I never hit this problem, and what's more interesting:
> the operations are about 5x faster in the EHCI system, even when my
> device is only 12Mbit-capable.
> 
> I can reproduce this issue with a vanilla 3.5.0 kernel.

...

> Any further ideas to shed more light into this issue?

Build a kernel with CONFIG_USB_DEBUG enabled (and also
CONFIG_DEBUG_FS).  When the hang occurs, go into the subdirectory of
/sys/kernel/debug/usb/ohci/ corresponding to the bus the device is
plugged into (0000:00:04.0 if your setup hasn't changed), and post
copies of the "registers" and "async" files.

Alan Stern


--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to