On Tue, 17 Jul 2012, Sarah Sharp wrote:

> > See
> > 
> >     http://marc.info/?l=linux-usb&m=134236551409964&w=2
> > 
> > Apparently the ASM1042 reports that a transfer completed normally even 
> > when it was short (or when it was cancelled).
> 
> When an URB is canceled, the xHCI driver asks the endpoint ring to be
> stopped.  However, the transfer may be completed before the ring stops,
> so we can have a canceled transfer where the full buffer really was
> transferred.  I don't see that as a bug, it's just a race condition that
> drivers need to deal with.

The events in the email message mentioned above did not involve a race.  
It's clear that no data got transferred at all, and yet usbmon reported
actual_length equal to transfer_buffer_length when the tranfer was 
cancelled.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to