mirror of
https://github.com/RPCS3/libusb.git
synced 2026-07-19 12:54:36 -04:00
a886bb02c87dd5faf271fad595e4622f7027d347
This patch adds some new flags to keep track of transfer state. These flags are used to properly handle transfers that are on the flying_transfers list for devices that are disconnected. The motivation for this patch is to release the requirement of holding the flying_transfers_lock for the duration of a call to libusb_submit_transfer(). Holding this lock is the simplest and safest way to submit a transfer, but it has performance impacts as it serializes transfer submission for a given context. With proper transfer state management, the library can handle a device disconnect without needing to prevent multiple transfers from being concurrently submitted. Signed-off-by: Chris Dickens <christopher.a.dickens@gmail.com>
libusb ====== libusb is a library for USB device access from Linux, Mac OS X, Windows and OpenBSD/NetBSD userspace. It is written in C and licensed under the GNU Lesser General Public License version 2.1 or, at your option, any later version (see COPYING). libusb is abstracted internally in such a way that it can hopefully be ported to other operating systems. Please see the PORTING file for more information. libusb homepage: http://libusb.info/ Developers will wish to consult the API documentation: http://api.libusb.info Use the mailing list for questions, comments, etc: http://mailing-list.libusb.info - Pete Batard <pete@akeo.ie> - Hans de Goede <hdegoede@redhat.com> - Xiaofan Chen <xiaofanc@gmail.com> - Ludovic Rousseau <ludovic.rousseau@gmail.com> - Nathan Hjelm <hjelmn@users.sourceforge.net> - Chris Dickens <christopher.a.dickens@gmail.com> (Please use the mailing list rather than mailing developers directly)
Description
Languages
C
91.7%
C++
3.1%
CMake
1.6%
Batchfile
1.1%
Makefile
1%
Other
1.5%