Re: [PATCHv2] musb_host: fix lockup on rxcsr_h_error

From: Greg KH
Date: Wed May 04 2016 - 16:19:36 EST


On Wed, May 04, 2016 at 02:17:15PM -0500, Bin Liu wrote:
> Hi,
>
> On Wed, May 04, 2016 at 10:02:16PM +0300, Sergei Shtylyov wrote:
> > Hello.
> >
> > On 05/04/2016 09:56 PM, Bin Liu wrote:
> >
> > >>>>>>>>yes, it also works with that reset and go to finish:
> > >>>>>>>>
> > >>>>>>>>diff --git a/drivers/usb/musb/musb_host.c b/drivers/usb/musb/musb_host.c
> > >>>>>>>>index c3d5fc9..8cd98e7 100644
> > >>>>>>>>--- a/drivers/usb/musb/musb_host.c
> > >>>>>>>>+++ b/drivers/usb/musb/musb_host.c
> > >>>>>>>>@@ -1599,6 +1599,10 @@ void musb_host_rx(struct musb *musb, u8 epnum)
> > >>>>>>>> status = -EPROTO;
> > >>>>>>>> musb_writeb(epio, MUSB_RXINTERVAL, 0);
> > >>>>>>>>
> > >>>>>>>>+ rx_csr &= ~MUSB_RXCSR_H_ERROR;
> > >>>>>>>>+ musb_writew(epio, MUSB_RXCSR, rx_csr);
> > >>>>>>>>+
> > >>>>>>>>+ goto finish;
> > >>>>>>>> } else if (rx_csr & MUSB_RXCSR_DATAERROR) {
> > >>>>>>>>
> > >>>>>>>> if (USB_ENDPOINT_XFER_ISOC != qh->type) {
> > >>>>>>>>
> > >>>>>>>
> > >>>>>>>Thanks for testing it.
> > >>>>>>
> > >>>>>>Have tested your patch and now both FT4232 and Huawei don't freeze on removal.
> > >>>>>>
> > >>>>>>Bin, Max thanks for fixing this issue.
> > >>>>>>
> > >>>>>>Tested-by: Yegor Yefremov <yegorslists@xxxxxxxxxxxxxx>
> > >>>>>
> > >>>>>Thanks for testing.
> > >>>>>
> > >>>>>Can you please test the patch [1] instead? I'd like to use it as the
> > >>>>>fix.
> > >>>>>
> > >>>>>[1] http://marc.info/?l=linux-usb&m=146222355213935&w=2
> > >>>>
> > >>>>The patch behaves the same as the previous one.
> > >>>>
> > >>>>Kernel: 4.6-rc6
> > >>>
> > >>>Thanks for testing. I will add your Tested-by.
> > >>
> > >>If you'll resend this patch, it would be good to add it to stable
> > >>kernels. I've tested 3.18.32 and it fixes the error too.
> >
> > >Thanks for testing.
> > >
> > >My plan is to not rush it into stable, but let it sit in v4.7 for a
> > >while first.
> >
> > Are you serious? Fixing interrupt storm due to not cleared
> > interrupt bit will only be done in 4.7?
>
> Well, I am new to maintianer's role, and thought there is only one week
> away to v4.7 merge window, there is no big difference to let this patch
> get into v4.7-rc1. If getting the fix into upstream as soon as possible
> is important, I will send it for 4.6-rc7.

No, your original idea of getting it into 4.7-rc1 first is the best, I
will not take this for 4.6-final right now, it's not a regression.

thanks,

greg k-h