#
301253 |
|
03-Jun-2016 |
hselasky |
MFC r300667: Check for signals when locking the USB enumeration thread from userspace, so that USB applications can be killed if an enumeration thread should be stuck for various reasons.
|
#
284500 |
|
17-Jun-2015 |
hselasky |
MFC r284011: Don't wait forever for USB data to be flushed.
|
#
278289 |
|
05-Feb-2015 |
hselasky |
MFC r277136: Resolve a special case deadlock: When two or more threads are simultaneously detaching kernel drivers on the same USB device we can get stuck in the "usb_wait_pending_ref_locked()" function because the conditions needed for allowing detach are not met.
While at it ensure that "flag_iserror" is only written when "priv_mtx" is locked, which is protecting it.
|
#
272592 |
|
06-Oct-2014 |
hselasky |
MFC r272480: When we fail to get a USB reference we should just return, because there are no more references held.
|
#
267347 |
|
11-Jun-2014 |
hselasky |
MFC r267240: Resolve a deadlock setting the USB configuration index from userspace on USB HUBs by moving the code into the USB explore threads. The deadlock happens because child devices of the USB HUB don't have the expected reference count when called from outside the explore thread. Only the HUB device itself, which the IOCTL interface locks, gets the correct reference count.
|
#
263799 |
|
27-Mar-2014 |
hselasky |
MFC r263423: Try to resolve a possible deadlock when detaching USB devices which create character devices. The deadlock can happen if an application is issuing IOCTLs which require USB refcounting, at the same time the USB device is detaching.
There is already a counter in place in the USB device structure to detect this situation, but it was not always checked ahead of invoking functions that might destroy character devices, like detach, set configuration, set alternate interface or detach active kernel driver.
|
#
263162 |
|
14-Mar-2014 |
hselasky |
MFC r262550, r262551 and r262554: Add support for kqfilter to USB character devices.
|
#
261468 |
|
04-Feb-2014 |
hselasky |
MFC r261123: Reduce dmesg verbosity.
|
#
261110 |
|
24-Jan-2014 |
hselasky |
MFC r260808 and r260814: - Close a minor deadlock. - Fix a possible memory use after free and leak situation associated with USB device detach when using character device handles. This also includes LibUSB. It turns out that "usb_close()" cannot always get a reference to clean up its USB transfers and such, if called during the kernel USB device detach.
|
#
257375 |
|
30-Oct-2013 |
hselasky |
MFC r257206: Fix a deadlock when trying to power off a USB device. The deadlock happens because the code in question is trying to modify the parent USB port registers outside the USB explore thread.
Approved by: re (glebius)
|
#
284500 |
|
17-Jun-2015 |
hselasky |
MFC r284011: Don't wait forever for USB data to be flushed.
|
#
278289 |
|
05-Feb-2015 |
hselasky |
MFC r277136: Resolve a special case deadlock: When two or more threads are simultaneously detaching kernel drivers on the same USB device we can get stuck in the "usb_wait_pending_ref_locked()" function because the conditions needed for allowing detach are not met.
While at it ensure that "flag_iserror" is only written when "priv_mtx" is locked, which is protecting it.
|
#
272592 |
|
06-Oct-2014 |
hselasky |
MFC r272480: When we fail to get a USB reference we should just return, because there are no more references held.
|
#
267347 |
|
11-Jun-2014 |
hselasky |
MFC r267240: Resolve a deadlock setting the USB configuration index from userspace on USB HUBs by moving the code into the USB explore threads. The deadlock happens because child devices of the USB HUB don't have the expected reference count when called from outside the explore thread. Only the HUB device itself, which the IOCTL interface locks, gets the correct reference count.
|
#
263799 |
|
27-Mar-2014 |
hselasky |
MFC r263423: Try to resolve a possible deadlock when detaching USB devices which create character devices. The deadlock can happen if an application is issuing IOCTLs which require USB refcounting, at the same time the USB device is detaching.
There is already a counter in place in the USB device structure to detect this situation, but it was not always checked ahead of invoking functions that might destroy character devices, like detach, set configuration, set alternate interface or detach active kernel driver.
|
#
263162 |
|
14-Mar-2014 |
hselasky |
MFC r262550, r262551 and r262554: Add support for kqfilter to USB character devices.
|
#
261468 |
|
04-Feb-2014 |
hselasky |
MFC r261123: Reduce dmesg verbosity.
|
#
261110 |
|
24-Jan-2014 |
hselasky |
MFC r260808 and r260814: - Close a minor deadlock. - Fix a possible memory use after free and leak situation associated with USB device detach when using character device handles. This also includes LibUSB. It turns out that "usb_close()" cannot always get a reference to clean up its USB transfers and such, if called during the kernel USB device detach.
|
#
257375 |
|
30-Oct-2013 |
hselasky |
MFC r257206: Fix a deadlock when trying to power off a USB device. The deadlock happens because the code in question is trying to modify the parent USB port registers outside the USB explore thread.
Approved by: re (glebius)
|