]> CyberLeo.Net >> Repos - FreeBSD/stable/8.git/commit
MFC r267240:
authorhselasky <hselasky@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Wed, 11 Jun 2014 05:45:48 +0000 (05:45 +0000)
committerhselasky <hselasky@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Wed, 11 Jun 2014 05:45:48 +0000 (05:45 +0000)
commit5d03fe780f986d43446e0111f449549061b13436
tree826db921a82515156a8aad791f38910e8b00f84f
parenta54bc181de90581593b1f80b890ba462d51dc2ce
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.

git-svn-id: svn://svn.freebsd.org/base/stable/8@267348 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/dev/usb/controller/usb_controller.c
sys/dev/usb/usb_dev.c
sys/dev/usb/usb_device.h
sys/dev/usb/usb_generic.c
sys/dev/usb/usb_hub.c
sys/dev/usb/usb_hub.h
sys/dev/usb/usbdi.h