On Sun, Mar 09, 2025 at 09:57:21PM +0000, Colin Evans wrote: > > In theory, turning off power to port 4 might stop all the events from > > being reported. You can try this to see if it works: > > > > echo 1 >/sys/bus/usb/devices/2-0:1.0/usb2-port4/disable > > > > Alan Stern > > Thank you, that is very helpful, for a couple of reasons. > > "Machine 2" is a new build, so if (as it sounds) the motherboard has a > hardware problem, then I need to > look into returning it. > > BTW- it seems I spoke too soon about the USB stick suppressing the error. > After a couple of reboots with > it in place the problem re-occurred. It does seem that connecting a hub > (switch) is the only way > to reliably stop the error. The switch has a bunch of wiring connected to > USB peripherals and other > machines. I would have guessed that might make the likelihood of picking up > electrical noise > actually worse, but that seems not to be the case here. It may have something to do with whether the attached device is USB-3 or USB-2. Hubs are both (or are USB-2 only). > "Machine 1" is several years old, it's actually the guts of the same PC that > was upgraded to make M/c 2. > It's not usable, or sellable, with this performance hit happening. I have > tried all the external USB ports > on this machine and not found the failing controller, my guess is it's going > to be one that supports > some of the on-board USB headers. In fact, the port in question might not be attached to anything, or improperly grounded, or something like that. > I had been looking on the web for a way to shut down the problem port, or > worst case the whole hub, > however all the Linux examples I found worked by either- > > a) Preventing the loading of the driver for the chipset, by type. However > that would kill all ports supported by > the same type of controller, and this motherboard has multiple > controllers of the same type onboard. > > b) Shutting down a port by searching for the connected device identifier. > However in these cases there > _are_ no connected devlces, the fault happens when the controller is not > connected to anything. > > Hopefully the command you recommended will do the trick, I will let you > know. > > Would I be correct in thinking this would need to be run at every boot, some > time after device enumeration, > or would it need to be run after every re-enumeration of devices after a USB > device is connected / > disconnected? Not sure how to achieve that. At every boot. It doesn't have to be after all the other devices are enumerated; after the USB controller itself is enumerated will be good enough. > I very much appreciate your help in identifying the fault. Thank you. You're welcome. Alan Stern