On Fri, Oct 08, 2010 at 03:10:35PM -0500, Scot Bontrager wrote: > A less boneheaded patch. The only caller of uhci_device_setintr simply > returns the return value upwards and it also returns USBD_NOMEM in several > cases. So, this seems like the route of least resistance.
Perhaps that change is fine (I'm not sure), but the ohci and ehci code needs to be checked if it suffers from the same issue, and it doesn't fix all issues. Other issues have been spotted that all boil down to taking bt_lock in the netbt code. E.g. in paths from usbd_open_pipe_intr() that ends up calling bus_dmamem_map() which may sleep later on. Boom. I've not looked a lot at the code but I don't see an easy fix for all the issues that bt_lock is causing. -m. -- Those of you who think you know everything are very annoying to those of us who do.
