In the file "/sys/dev/usb/usb.c", the function "usb_rem_task" should wait for
the "usb_task_thread()" to finish execution of the callback function. Though
this might be impossible due to the contexts from which this function is
called. At least one place (see if_udav.c) "usb_rem_task" is called from
detach, and the code expects that the callback has returned or is not called,
after that "usb_rem_task" returns. Else the callback will access freed
Maybe "usb_xxxx_task" should not be used by if_udav.c, like suggested
in another PR?
Mark suspended awaiting patches.
For bugs that match the following
- Status Is In progress
- Untouched since 2018-01-01.
- Affects Base System OR Documentation
Reset to open status.
I did a quick pass but if you are getting this email it might be worthwhile to double check to see if this bug ought to be closed.