mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-13 16:16:15 -04:00
Merge "usb: dwc3: gadget: Handle race between remove_request & ep_dequeue"
This commit is contained in:
commit
733e5740b2
1 changed files with 7 additions and 3 deletions
|
|
@ -1851,7 +1851,8 @@ static int dwc3_gadget_ep_dequeue(struct usb_ep *ep,
|
|||
/* If ep isn't started, then there's no end transfer
|
||||
* pending
|
||||
*/
|
||||
if (!(dep->flags & DWC3_EP_END_TRANSFER_PENDING))
|
||||
if ((dep->flags & DWC3_EP_TRANSFER_STARTED) &&
|
||||
!(dep->flags & DWC3_EP_END_TRANSFER_PENDING))
|
||||
dwc3_gadget_ep_cleanup_cancelled_requests(dep);
|
||||
|
||||
goto out;
|
||||
|
|
@ -3582,8 +3583,11 @@ int dwc3_stop_active_transfer(struct dwc3_ep *dep, bool force, bool interrupt)
|
|||
ret = dwc3_send_gadget_ep_cmd(dep, cmd, ¶ms);
|
||||
WARN_ON_ONCE(ret);
|
||||
dep->resource_index = 0;
|
||||
|
||||
dbg_log_string("%s(%d): endxfer ret:%d", dep->name, dep->number, ret);
|
||||
if (ret == -ETIMEDOUT) {
|
||||
dbg_log_string("%s(%d): endxfer ret:%d",
|
||||
dep->name, dep->number, ret);
|
||||
return ret;
|
||||
}
|
||||
|
||||
if (!interrupt)
|
||||
dep->flags &= ~DWC3_EP_TRANSFER_STARTED;
|
||||
|
|
|
|||
Loading…
Reference in a new issue