On Wed, 18 Jan 2006, Greg KH wrote: > We can not call put_device() from irq context :( > > I added a "might_sleep()" to the driver core and get the following from > the ehci driver. Any thoughts?
In principle the put_device and corresponding get_device calls aren't needed. We don't release a usb_device structure until after disabling all its endpoints, and disabling an endpoint will wait until all the URBs for that endpoint have completed. So there's no reason to keep a reference to the device structure for each URB. I see that uhci-hcd is guilty of the same thing (reference acquired for each QH, released while holding a spinlock). Probably each of the host controller drivers is. Alan Stern ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel