On Tue, 3 Dec 2002, David Brownell wrote:

>> I think you're right here; there are (at least) 3 things that need to 
>> be done when disconnecting a driver from a device (interface):
>> 
>> 1. The driver must stop using the interface.
>> 2. All pending URBs must be aborted.
>> 3. The device (or interface) should be placed into a stable/reset state.
>> 
>> ...
>> Currently, #1 is done by usbdevfs, not (AFAIK) #2.  And #3 is really 
>> up to whatever new driver takes over.
>
>#2 is currently the driver's responsibility, as part of #1;
>it's not really separarable, since if there were a pending URB
>that's not aborted, #1 wouldn't have been achieved.

a driver is supposed to abort URBs after a device is disconnected?

I thought those URBs would be completed with error (ENODEV or ECONNRESET).

>In fact patches have recently been integrated (2.4, 2,5)
>to address a usbfs bug where it wasn't doing that.

I thought that was to fix (voluntarily) releasing an interface with 
pending URBs, which is different than an interface being disconnected 
with pending URBs.


-- 
Dan Streetman
[EMAIL PROTECTED]
--------------------------------------------------
186,282 miles per second:
It isn't just a good idea, it's the law!


-------------------------------------------------------
This SF.net email is sponsored by: Microsoft Visual Studio.NET 
comprehensive development tool, built to increase your 
productivity. Try a free online hosted session at:
http://ads.sourceforge.net/cgi-bin/redirect.pl?micr0003en
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to