Mark Rustad wrote: > On Mar 2, 2006, at 5:13 PM, Mike Anderson wrote: >> James Bottomley <James.Bottomley@xxxxxxxxxxxx> wrote: >>> 1. Discovery order is non-deterministic (it starts one thread per >>> port, so the threads race for discovery) >> >> The issue also results in the device discovery not completing by >> the time the module load completes resulting in the initrd not >> finding the boot disk >> http://bugzilla.kernel.org/show_bug.cgi?id=6045 >> >> I agree that we need a solution for this. Should the solution be in >> the LLDDs. I thought previous comments was that we wanted this fixed >> outside the kernel in user space. Though I have not seen any enabled >> support in initrds or support in the initrd bins. >> >> This appears to not only be an issue with aic94xx as it appears >> this could happen with some of the fc transport LLDDs. > > It also is a problem for usb-storage devices. I have to use a kernel > parameter of "boot_delay=7" for my USB root device to be available. > Fine for my system, but ugly in general. Same for SBP-2. This is old and has been solved before. Neither attempts to enforce a specific order of device registering, nor a delay of an module init routine in order to wait for completion of device discovery is a proper solution. Let alone an empirically chosen delay. Create an initrd. Put the necessary hotplug infrastructure into the initrd. This includes - reacting on device hotplugs, - mapping persistent unique device identifiers or unique partition identifiers to mount points, i.e. basically everything which has to be done for hotpluggable devices. (Put policy into userspace. Let the kernel provide mechanism only.) -- Stefan Richter -=====-=-==- --== ---== http://arcgraph.de/sr/ - : send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html