On Mon, 26 Feb 2007, Jon Smirl wrote:

> My instability seems to come from a race between EHCI and UHCI. I have
> one EHCI and four UHCI host controllers (ICH5).
> 
> I usually get this at boot:
> bus 1 UHCI-A
> bus 2 UHCI-B
> bus 3 UHCI-C
> bus 4 UHCI-D
> bus 5 EHCI
> 
> But occasionally I get this. I don't see a pattern, it feels like a race.
> bus 1 EHCI
> bus 2 UHCI-A
> bus 3 UHCI-B
> bus 4 UHCI-C
> bus 5 UHCI-D
> 
> My USB is all loading as modules. I don't see any option to control
> parallel PCI probing in 2.6.20.

The option is called CONFIG_PCI_MULTITHREAD_PROBE, and it is marked BROKEN 
in 2.6.20.  So it's probably not the reason.  More likely you're just up 
against an ordinary race.  At some point in the boot process udev starts 
up, it spawns lots of modprobe tasks all running at the same time, and any 
one of them could end up beating the others.

You could remove this indeterminism by explicitly loading ehci-hcd and
uhci-hcd (that is the preferred order) in a system start-up script before
udev.  In FC6, for example, the modules are loaded from an initramfs
script.

Alan Stern


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to