[PATCH] USB: Dequeuing of root-hub URBs
This patch fixes a tiny SMP-type hole in root-hub synchronization. Although the HCD glue layer properly unlinks root-hub status URBs synchronously, it doesn't do so for URBs sent to endpoint 0. This patch copies some code from usb_kill_urb, to make such unlinks wait until the host controller driver has finished handling the URB. This behavior is required for hcd_endpoint_disable to work correctly. The patch also renames usb_rh_status_dequeue to usb_rh_urb_dequeue (to better describe its updated function) and declares the routine static. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
Showing
Please register or sign in to comment