Hi,

Alan Stern:
> None of these changes should be needed.  That's not to say there aren't 
> any remaining problems -- there may well be, but they should be fixed 
> another way.
> 
Probably. You know more about that code than I do...

> I'm not sure about this test.  A better approach might be to change the
> host controller drivers instead so that they don't call this routine after
> the root hub has been removed.  I suppose that this test won't hurt,
> however.
> 
> If you're running into races with unexpected device removal, this is 
> probably the place where they occur.
> 
OK, I'll look more closer into this.

> By the time this code runs, the root hub should already have been removed.  
> Removing it will automatically cancel the status URB and hence will delete 
> the timer; there's no need to delete it again.
> 
At least one of these del_timer calls is needed, simply because
otherwise the timeout code gets called with a NULL data pointer. :-(
I simply slapped that check around the two locations which at first
glance looked like they might need them, and the problem went away.


I should note that the system isn't stable yet, but at least it's
significantly more stable than before. :-/

My test case is simple: Take a laptop with PCMCIA (or a PCMCIA<->PCI
card), stick an OHCI USB adapter with a serial adapter into it, an do a 

        while : ; do cardctl insert; sleep 3; cardctl eject; sleep 1; done

loop. Before applying this patch, death was certain after 10 iterations;
now it's more like 500.

-- 
Matthias Urlichs   |   {M:U} IT Design @ m-u-it.de   |  [EMAIL PROTECTED]


-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to