On Sat, Mar 09, 2002 at 05:01:23PM -0600, Kai Germaschewski wrote:
> 
> Currently, the USB core is using module_init() for its initialization.
> The means, if USB is compiled into the kernel, the point at which USB is
> initialized depends on the link order in the top-level Makefile.
> 
> I had an report that this caused a kernel crash when an USB ISDN adapter
> was initializing before the USB core, calling register_usb() (Though I
> don't know where it exactly that did crash). The quick fix was to move
> ISDN to the end of the list in the top-level Makefile.  However, the
> correct fix IMO would be to get rid of the subtle link order dependencies
> by making usb_init() an subsys_initcall(), as we already do for other bus
> drivers, like pci, isapnp etc.

But you still have to get the order correct.  USB has to start after
PCI.

> One further reason is that I would actually like to link drivers/net/irda
> from within drivers/net, which would move it in front of USB, though, and
> thus cause the same problem w.r.t USB IrDA dongles.

Ah, yet another good reason to put all of the usb drivers in the
/drivers/usb directory :)

> If nobody sees a problem with this change, I can come up with the
> (trivial) patch.

I'd be interested in seeing the patch.

thanks,

greg k-h

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to