CVSROOT:        /cvs
Module name:    src
Changes by:     [email protected] 2010/09/23 00:30:37

Modified files:
        sys/dev/usb    : usb.c usbdi.h 

Log message:
add two members to struct usb_task
* usbd_device_handle dev - the device responsible for the task.  use
this to not run the task if the device's hub is dying.
* int running - a flag to be set when the task is running.

add usb_rem_wait_task(), a wrapper for usb_rem_task() that waits for
the task to complete if the task is already running.

s/usb_rem_task/usb_rem_wait_task/ in usb_detach().  probably most
drivers using usb_tasks should do this as well.  although device
attach/detach is serialized in normal cases, in the special case
where the usb bus is hotpluggable (like cardbus/pcmcia), devices
are not detached in the task thread.

Reply via email to