Oliver Neukum wrote:
For (b) there are several options. Today we expect (b1) device
driver handles all in disconnect(), except that to guard against
bugs there sometimes (b2) HCD may need to get involved. I'd
think a cleaner solution would be (b3) usbcore kills them all;
less work for device drivers too.
From an abstract standpoint I fully agree. From a standpoint
of wishing for 2.6.0 to be released this year with a solid USB stack,
I disagree.
Different discussion. The usbcore change is simple. It'd be
easy enough to package as a driver option ... and people would
notice that drivers _using_ that option were more solid! But
I tend to agree that the time to force wholesale driver changes
should have ended last year.
It needs usbcore to keep track of URBs. It currently doesn't.
Anything using the "hcd" framework, part of usbcore, does.
At a minimum usbcore would need to keep URBs in per
interface lists and use locking against device _and_ interface
in several places. And that's just a first thought.
The urbs are now tracked per-device. The rest can be inferred
from urb->pipe and the current config.
- Dave
-------------------------------------------------------
This SF.net email is sponsored by: SlickEdit Inc. Develop an edge.
The most comprehensive and flexible code editor you can use.
Code faster. C/C++, C#, Java, HTML, XML, many more. FREE 30-Day Trial.
www.slickedit.com/sourceforge
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel