Alan Stern wrote:
Just for kicks I created a patch (included below) that allocates those
bits from urb->transfer_flags.  That's not such a great place, because
it's liable to be overwritten by device drivers.  But the only alternative
is to add a whole extra field (like internal_state).
As soon as an urb is given back to the device driver, it's allowed to
change anything it wants in the URB ... it's "given back", and no longer
controlled by usbcore.

For what it's worth, I think it would be good thing to have the unlink
logic set a "canceled" flag in addition to updating urb->status.  There
is a lot of code that needs to test for the three different reasons an
URB may get canceled (synchronous unlink, asynchronous, and HC dying).
It'd be faster, and less error prone, to just test a single bit.

In fact if reporting cancelation through urb->status weren't so deeply
entrenched, I'd prefer that to be the way it got reported ... so there'd
more values returned.  (urb->status, urb->actual_length, the bit saying
if it was canceled, and all that ISO stuff.)

- Dave





-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to