Comment 667 for bug 88746

Revision history for this message
In , kernel.org (kernel.org-linux-kernel-bugs) wrote :

I have been experiencing similar issues to what is described here, however it involves keyboard and mouse on ubuntu with their kernel 2.6.29. I understand this is not your vanilla kernel, and it's not involving the same type of devices as reported initially here. However please bear with me and read on.

First I'd like to bring your attention to the fact there has been many similar bug reports about usb resets on various distro, a few examples are:
https://bugs.launchpad.net/bugs/124406 : the resets affects keyboard and mouse
https://bugs.launchpad.net/bugs/91230 : idem, just older
http://<email address hidden>/msg18199.html
http://taint.org/2006/12/13/191554a.html
http://bugs.gentoo.org/177266
https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.15/+bug/54419
...
There's plenty more if you search the net with these keywords: reset speed USB device using ehci_hcd.

I believe it's a long standing bug which is elusive and difficult to track. What I observe across a lot of reports is often the following:

- It gets dismissed by being hardware related. Certainly some of these reports are due to bad hardware. However there are many cases where the same config works perfectly well with other non-linux OS.

- It's often resolved by trying to connect the affected devices differently. In my case it seems I had to put my external keyboard and mouse to a separate hub.

- Many people are getting frustrated with it and either give up or play around like me. I gave up on migrating to linux a couple years ago because of this bug.

Being so elusive and widespread, many of these bug reports end up with either no fix, or a workaround like mentioned before that does not really address the issue. And since nobody can do much about it, these reports become inactive/closed. One of the most active thread on this bug (first link I gave above) is probably going to end up being closed because it has been judged too "messy" (I agree but that's no reason to close it, it's just a messy bug).

One might argue there are more than one bug here, because different devices are affected. My guess however is that it's one bug affecting various devices (hd, kb, mice, ...). In fact, having played around a bit, I would advance the theory that it is related to the presence of devices with different speed on the same bus/hub (lo+hi and lo+full for sure, hi+lo most likely). If you look at this post, you'll see a report of this bug on a usb 1.1 machine:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/124406/comments/254

So it could be (pure speculation) that this bug has been introduced since the addition of ehci, and is affecting usb1.1 as a result of the changes made to accomodate ehci. According to http://www.mjmwired.net/kernel/Documentation/usb/ehci.txt :
Note that USB 2.0 support involves more than just EHCI. It requires other changes to the Linux-USB core APIs, including the hub driver, but those changes haven't needed to really change the basic "usbcore" APIs exposed to USB device drivers.

Anyway, my point really is this: this bug is probably more widespread than one can imagine, it affects many distro, it's been reported many times over in many places with different facets.
This bug report #11159 is probably the only open and recent report of this bug on the kernel list. So please, don't dismiss it because it's too elusive or leads to a messy discussion thread!

I consider this bug to a linux killer, and there is a real need for the kernel team to be involved.