From: Bin Liu <b-liu@ti.com>
To: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Cc: Yegor Yefremov <yegorslists@googlemail.com>,
Maxim Uvarov <muvarov@gmail.com>,
kernel list <linux-kernel@vger.kernel.org>,
linux-usb <linux-usb@vger.kernel.org>,
Greg KH <gregkh@linuxfoundation.org>
Subject: Re: [PATCHv2] musb_host: fix lockup on rxcsr_h_error
Date: Thu, 5 May 2016 08:45:41 -0500 [thread overview]
Message-ID: <20160505134541.GC22575@uda0271908> (raw)
In-Reply-To: <046fc425-f559-0212-d2b5-27e2a4b24c7c@cogentembedded.com>
On Thu, May 05, 2016 at 04:39:06PM +0300, Sergei Shtylyov wrote:
> On 5/5/2016 4:31 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@googlemail.com>
> >>>>>>>>>
> >>>>>>>>>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.
> >>>
> >>>BTY, the issue is not because of not clearing interrupt bit, but the hub
> >>>has no chance to report the disconnect event, which causes the
> >>>controller keeps generating the interrupt for every new rx urb.
> >>
> >> Sorry, looking at the Mentor manuals, I got the impression that
> >>whenever the RXCSR.Error is set, there's interrupt. Probably they
> >
> >This is my understanding of the manual too.
> >
> >>meant that the interrupt is generated only on transition from 0 to
> >>1....
> >
> >What transition? the RXCSR bit?
>
> Of course.
>
> >'set' means from 0 to 1, 'clear' means 1 -> 0, right?
>
> Well, in my understanding "set" means 1 and "clear" means 0.
This is right. I didn't mean raising or falling edge when mentioning
0->1 or 1->0. We don't know when exactly the controller generates the
interrupt when CSR bit changes, and we/driver don't care.
>
> >I don't see you have any misunderstanding.
>
> >>>Regards,
> >>>-Bin.
>
> MBR, Sergei
>
next prev parent reply other threads:[~2016-05-05 13:45 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-27 6:51 [PATCHv2] musb_host: fix lockup on rxcsr_h_error Max Uvarov
2016-04-27 15:46 ` Bin Liu
2016-04-27 18:26 ` Maxim Uvarov
2016-04-27 19:13 ` Bin Liu
2016-04-27 21:28 ` Bin Liu
2016-04-28 6:51 ` Maxim Uvarov
2016-04-28 14:37 ` Bin Liu
2016-05-03 10:03 ` Yegor Yefremov
2016-05-03 13:48 ` Bin Liu
2016-05-03 14:25 ` Yegor Yefremov
2016-05-03 14:35 ` Bin Liu
2016-05-04 14:49 ` Yegor Yefremov
2016-05-04 18:56 ` Bin Liu
2016-05-04 19:02 ` Sergei Shtylyov
2016-05-04 19:17 ` Bin Liu
2016-05-04 20:19 ` Greg KH
2016-05-04 20:47 ` Bin Liu
2016-05-05 13:21 ` Sergei Shtylyov
2016-05-05 13:31 ` Bin Liu
2016-05-05 13:39 ` Sergei Shtylyov
2016-05-05 13:45 ` Bin Liu [this message]
2018-01-25 15:45 ` Bin Liu
2018-01-25 16:24 ` Maxim Uvarov
2018-01-25 16:31 ` Bin Liu
2018-01-26 9:24 ` Maxim Uvarov
2018-02-08 2:38 ` Bin Liu
2018-01-26 10:42 ` Tomas Paukrt
2018-08-06 13:19 ` Tomas Paukrt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160505134541.GC22575@uda0271908 \
--to=b-liu@ti.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=muvarov@gmail.com \
--cc=sergei.shtylyov@cogentembedded.com \
--cc=yegorslists@googlemail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.