usb_interrupt_read blocks "forever" sometimes

Hans Petter Selasky hselasky at c2i.net
Wed Feb 10 09:35:34 UTC 2010


On Wednesday 10 February 2010 10:31:28 Daniel O'Connor wrote:
> On Wed, 10 Feb 2010, Hans Petter Selasky wrote:
> > I would not recommend using signals with libusb. It is not portable.
> > Currently signals are ignored. What you would have to do, is to use
> 
> OK.
> 
> > the timeout argument which you are doing, and have a timekeeper
> > variable somewhere, or create another thread. Still, when using the
> > timeout there is a chance you can loose data.
> 
> The problem is that the timeout seems to be ignored sometimes - that is
> the only reason I was playing with alarm() at all.
> 
> I have the timeout set to 100 (milliseconds?) yet I find if I restart
> the program every now and then it will get stuck on the first read.
> 

Could you enable debugging for the Host Controller responsible for your 
device:

sysctl hw.ehci.debug=15
sysctl hw.ohci.debug=15
sysctl hw.uhci.debug=15

--HPS


More information about the freebsd-usb mailing list