On Aug 25, 2005, at 7:58 AM, Alan Stern wrote:
Mounting is the least of your problems. Those repeated errors andfailures during enumeration are more troubling. Do they occur at all whenyou run 2.4? The log you posted had that portion cut out.
Alan, there's a very good reason for that. The log was complete, I suspect. I update my kernel config using make oldconfig, and assume in most aspects it's the same going forward. There is, of course, a flaw in that thinking -- no can do from 2.4 to 2.6. So I took a look at the (assumed) identical .config (you can see it coming) and ehci was not configured, making my entire bug premise bogus. Everything "works under 2.4" not because the usb2 system is working, but because it was automatically falling back to uhci. With ehci on, you'll be delighted to know 2.4 seems to work a bit worse than 2.6, removing the bogus assumption that 2.4 was working better (okay, Dave, can you see the pie hitting my face? Yes, that's completely deserved). 2.4 fails on the rear panel if it has previously failed on the front panel in the same session. If I just use the rear panel, ehci works there.
I am clearly the bug reporter from hell. Not sure how to proceed now. I suspect your statement:
It appears that some aspect of the ehci-hcd driver in 2.6 causes it to bemore sensitive to signal distortions (caused by the longer cable connecting to the front ports)
... gets to the crux of the matter. I assume because of the higher throughput, ehci _has_ to be more sensitive than uhci? Bottom line is, the actual difference is just that uhci can run the port and ehci cannot, which is a much simpler issue.
On the other hand, this implies that changes to usb-storage or to the hub driver won't really help much. Is this true? That is, does enumerationstill give a large number of errors when you use Dave's patch?
Assuming I'm not the most hated moron in the world, I will move to kernel 2.6.12.5 later today, run a baseline record, then install dave's patch in stages and run plugin tests on it. For the moment, my presence is required elsewhere.
Here's a sample 2.4 ehci failure from the front panel:
twofour-in
Description: Binary data
Dave "I can't believe he didn't see that" North