usb: gadget: f_mbim: Ignore -EBUSY error for notify_req
notify_request can be queued from mbim_response_complete
or from mbim_write. Since, spin_lock needs to be dropped
before queuing usb_request, there is a possibility of race
between these two contexts. If mbim_response_complete preempts
mbim_write just before queuing the notify_request then
ep_queue from mbim_write subsequently fails with -EBUSY error.
mbim_write treats this as fatal error and drops modem response.
This results in driver returning STALL later when notify_req
gets completed. Fix this by not treating -EBUSY from ep_queue
as fatal error and don't free the response.
Change-Id: Ieb39569b31bc63c67aa27a971156552209e917b5
Signed-off-by:
Manu Gautam <mgautam@codeaurora.org>
Loading
Please register or sign in to comment