On Tue, 2008-02-26 at 11:04 -0500, Alan Stern wrote:
> Please use Reply-To-All so that the mailing list can see your 
> responses.

Sorry, didn't notice my dirty laundry was being aired in public...
*blush*

> On Tue, 26 Feb 2008, Jan Gutter wrote:
> 
> > On Mon, 2008-02-25 at 11:10 -0500, Alan Stern wrote:
> > 
> > > You can try adding an explicit delay to see if it helps.  In 
> > > drivers/usb/core/hub.c:hub_port_init(), add a call to msleep just 
> > > before the line:
> > > 
> > >   for (i = 0; i < GET_DESCRIPTOR_TRIES; (++i, msleep(100))) {
> > > 
> > 
> > Ok, in desperation I tried 5000ms, and it worked. 2000ms is still not
> > enough though. I'm "bisecting" the time now to try to find out what the
> > minimum time is.

2000ms fails, but 3000ms succeeds. Keep in mind, though, that I did not
suffer any of these problems in 2.6.23. How the heck did it manage to
work there? Hub not shutting down for powersave, other init mechanism,
something like that?
 
> Maybe we should add some sort of exponential backoff to the delay time 
> between the reset and the first Get-Descriptor request.

Hmmm, it would be interesting to chart the state diagram and cater for
all the broken hardware. I'm worried that this would cause some *other*
broken things to break in new and interesting ways...

> Still, if a device takes more than 2 seconds to initialize itself 
> after a reset, what do you expect?  According to the USB spec, it 
> shouldn't take more than 10 ms.

I agree, but again, 2.6.23 == fun, 2.6.24 == no fun. Windows XP and
Vista (yeah right!) have no problems either. Even a single-chip DVD
player with USB-in has no problem (dunno if it uses USB2 or USB1.1,
though). Counterargument: this seems to be the only USB-device
regression in 2.6.24, if it were some weird timing issue in the USB
stack, the fallout *should* have been easily visible!

You think it's time to work on an instrumented 2.6.23 and compare the
code paths taken to those in 2.6.24?

Jan
-- 
+------------------------------+
|name:     Jan Gutter          |
|company:  LucidView           |
|email:    [EMAIL PROTECTED]  |
|mobile:   +27824422233        |
|personal: [EMAIL PROTECTED] |
+------------------------------+

-
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to