Ticket #8 (closed defect: fixed)

Opened 8 years ago

Last modified 6 years ago

cancel URBs in reverse order

Reported by: dsd Owned by: Alan Stern <stern@…>
Milestone: Component: libusb-1.0
Keywords: Cc:
Blocked By: Blocks:


avoids us having to do so much shifting around of data that arrives after cancellation, and will fix some undesirable behaviour that might occur when cancelling a big bulk-out transfer.

Change History

comment:1 Changed 6 years ago by Alan Stern <stern@…>

  • Owner set to Alan Stern <stern@…>
  • Resolution set to fixed
  • Status changed from new to closed

In [295c9d12e25bc2dbdd8b42bd67a1f7120f0631a1/libusb]:

Linux: cancel URBs in reverse order

In a multi-URB transfer, URBs should be cancelled in reverse order of
submission. This prevents races that might otherwise occur (after URB N
is cancelled, data may be transferred for URB N+1 before it too can be
cancelled). Fixes #8.

Note: See TracTickets for help on using tickets.