mbox series

[4.19.y,0/3] usb: dwc3: Prevent requests from being queued twice

Message ID 1564407819-10746-1-git-send-email-saranya.gopal@intel.com (mailing list archive)
Headers show
Series usb: dwc3: Prevent requests from being queued twice | expand

Message

Saranya Gopal July 29, 2019, 1:43 p.m. UTC
With recent changes in AOSP, adb is now using asynchronous I/O.
While adb works good for the most part, there have been issues with
adb root/unroot commands which cause adb hang. The issue is caused
by a request being queued twice. A series of 3 patches from
Felipe Balbi in upstream tree fixes this issue.

Felipe Balbi (3):
  usb: dwc3: gadget: add dwc3_request status tracking
  usb: dwc3: gadget: prevent dwc3_request from being queued twice
  usb: dwc3: gadget: remove req->started flag

 drivers/usb/dwc3/core.h   | 11 +++++++++--
 drivers/usb/dwc3/gadget.c |  9 ++++++++-
 drivers/usb/dwc3/gadget.h |  4 ++--
 3 files changed, 19 insertions(+), 5 deletions(-)

Comments

Greg Kroah-Hartman July 29, 2019, 5:34 p.m. UTC | #1
On Mon, Jul 29, 2019 at 07:13:36PM +0530, Saranya Gopal wrote:
> With recent changes in AOSP, adb is now using asynchronous I/O.
> While adb works good for the most part, there have been issues with
> adb root/unroot commands which cause adb hang. The issue is caused
> by a request being queued twice. A series of 3 patches from
> Felipe Balbi in upstream tree fixes this issue.
> 
> Felipe Balbi (3):
>   usb: dwc3: gadget: add dwc3_request status tracking
>   usb: dwc3: gadget: prevent dwc3_request from being queued twice
>   usb: dwc3: gadget: remove req->started flag

I would like to get an ack from Felipe before I take these.

thanks,

greg k-h
Saranya Gopal July 30, 2019, 9:29 a.m. UTC | #2
> On Mon, Jul 29, 2019 at 07:13:36PM +0530, Saranya Gopal wrote:
> > With recent changes in AOSP, adb is now using asynchronous I/O.
> > While adb works good for the most part, there have been issues with
> > adb root/unroot commands which cause adb hang. The issue is caused
> > by a request being queued twice. A series of 3 patches from
> > Felipe Balbi in upstream tree fixes this issue.
> >
> > Felipe Balbi (3):
> >   usb: dwc3: gadget: add dwc3_request status tracking
> >   usb: dwc3: gadget: prevent dwc3_request from being queued twice
> >   usb: dwc3: gadget: remove req->started flag
> 
> I would like to get an ack from Felipe before I take these.
> 
> thanks,
> 
> greg k-h

I just realized that I had been testing this patch series with the flag to enable async IO on adb disabled!
It requires a few more patches on top for adb to work properly in async IO mode.
It has been working reliably in our internal tree for some time.
Let me resubmit the whole series after getting it reviewed by Felipe.

Thanks,
Saranya