* re : 3.2-rc2 regression due to commit "USB: EHCI: fix HUB TT scheduling issue with iso transfer" 811c926c
@ 2011-11-26 22:13 matthieu castet
2011-11-27 20:08 ` Sander Eikelenboom
0 siblings, 1 reply; 3+ messages in thread
From: matthieu castet @ 2011-11-26 22:13 UTC (permalink / raw)
To: Sander Eikelenboom, linux-usb, linux-kernel
Hi,
could you try the following patch ?
It seems there is a flow in the error condition.
Matthieu
diff --git a/drivers/usb/host/ehci-sched.c b/drivers/usb/host/ehci-sched.c
index 56a3203..464b451 100644
--- a/drivers/usb/host/ehci-sched.c
+++ b/drivers/usb/host/ehci-sched.c
@@ -1475,6 +1475,7 @@ iso_stream_schedule (
* jump until after the queue is primed.
*/
else {
+ int done = 0;
start = SCHEDULE_SLOP + (now & ~0x07);
/* NOTE: assumes URB_ISO_ASAP, to limit complexity/bugs */
@@ -1491,19 +1492,23 @@ iso_stream_schedule (
/* check schedule: enough space? */
if (stream->highspeed) {
if (itd_slot_ok(ehci, mod, start,
- stream->usecs, period))
+ stream->usecs, period)) {
+ done = 1;
break;
+ }
} else {
if ((start % 8) >= 6)
continue;
if (sitd_slot_ok(ehci, mod, stream,
- start, sched, period))
+ start, sched, period)) {
+ done = 1;
break;
+ }
}
} while (start > next);
/* no room in the schedule */
- if (start == next) {
+ if (!done) {
ehci_dbg(ehci, "iso resched full %p (now %d max %d)\n",
urb, now, now + mod);
status = -ENOSPC;
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: re : 3.2-rc2 regression due to commit "USB: EHCI: fix HUB TT scheduling issue with iso transfer" 811c926c
2011-11-26 22:13 re : 3.2-rc2 regression due to commit "USB: EHCI: fix HUB TT scheduling issue with iso transfer" 811c926c matthieu castet
@ 2011-11-27 20:08 ` Sander Eikelenboom
2011-11-27 21:03 ` Greg KH
0 siblings, 1 reply; 3+ messages in thread
From: Sander Eikelenboom @ 2011-11-27 20:08 UTC (permalink / raw)
To: matthieu castet; +Cc: linux-usb, linux-kernel
Hi Matthieu,
I can confirm this patch fixes my problem, after testing haven't seen any problems yet.
Thx !
--
Sander
Saturday, November 26, 2011, 11:13:04 PM, you wrote:
> Hi,
> could you try the following patch ?
> It seems there is a flow in the error condition.
> Matthieu
> diff --git a/drivers/usb/host/ehci-sched.c b/drivers/usb/host/ehci-sched.c
> index 56a3203..464b451 100644
> --- a/drivers/usb/host/ehci-sched.c
> +++ b/drivers/usb/host/ehci-sched.c
> @@ -1475,6 +1475,7 @@ iso_stream_schedule (
> * jump until after the queue is primed.
> */
> else {
> + int done = 0;
> start = SCHEDULE_SLOP + (now & ~0x07);
>
> /* NOTE: assumes URB_ISO_ASAP, to limit complexity/bugs */
> @@ -1491,19 +1492,23 @@ iso_stream_schedule (
> /* check schedule: enough space? */
> if (stream->highspeed) {
> if (itd_slot_ok(ehci, mod, start,
> - stream->usecs, period))
> + stream->usecs, period)) {
> + done = 1;
> break;
> + }
> } else {
> if ((start % 8) >= 6)
> continue;
> if (sitd_slot_ok(ehci, mod, stream,
> - start, sched, period))
> + start, sched, period)) {
> + done = 1;
> break;
> + }
> }
> } while (start > next);
>
> /* no room in the schedule */
> - if (start == next) {
> + if (!done) {
> ehci_dbg(ehci, "iso resched full %p (now %d max %d)\n",
> urb, now, now + mod);
> status = -ENOSPC;
--
Best regards,
Sander mailto:linux@eikelenboom.it
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: re : 3.2-rc2 regression due to commit "USB: EHCI: fix HUB TT scheduling issue with iso transfer" 811c926c
2011-11-27 20:08 ` Sander Eikelenboom
@ 2011-11-27 21:03 ` Greg KH
0 siblings, 0 replies; 3+ messages in thread
From: Greg KH @ 2011-11-27 21:03 UTC (permalink / raw)
To: Sander Eikelenboom; +Cc: matthieu castet, linux-usb, linux-kernel
On Sun, Nov 27, 2011 at 09:08:13PM +0100, Sander Eikelenboom wrote:
> Hi Matthieu,
>
> I can confirm this patch fixes my problem, after testing haven't seen any problems yet.
Wonderful, thanks for testing.
Matthieu, care to make this up into a "real" patch so that I can apply
it and get it into 3.2?
thanks,
greg k-h
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-11-27 21:04 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-26 22:13 re : 3.2-rc2 regression due to commit "USB: EHCI: fix HUB TT scheduling issue with iso transfer" 811c926c matthieu castet
2011-11-27 20:08 ` Sander Eikelenboom
2011-11-27 21:03 ` Greg KH
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.