On Wed, May 11, 2011 at 09:38:28PM +0530, Vikram Narayanan wrote: > >> This is a question that arose from a older kernel ( 2.6.21 ) but I think > >> it's generic to all kernels. Actually this might not a question on the > >> kernel itself at all. So here it goes, > >> > >> I'm using a USB 3G modem with this kernel. The system loads three > >> modules for it: pl2303, option and usbserial. Problem is, it looks like > >> the order or loading is different ( I'm judging this by the order they > >> appear in lsmod output): > >> > >> Sometimes, lsmod says: > >> pl2303 18628 0 > >> option 9664 0 > >> usbserial 28296 2 pl2303,option > >> > >> And sometimes, it says: > >> option 9664 0 > >> pl2303 18628 0 > >> usbserial 28296 2 option,pl2303 > >> > >> Problem is, if option is before pl2303, the device won't work properly. > >> So my question is: who decides which is loaded first, or, why does lsmod > >> give different order? > > > > It's random and there is no way to specify the order unless you make one > > module a dependancy of the other. > Isn't modules.dep file take care of this? Yes, but again, there is no such dependancy between these two modules as they are separate and do not control the same type of hardware. Or at least, they shouldn't. > > And for these modules, they should not be dependant on each other, so > > you can't do that. > It does I guess. In my system, the modules.dep has, > kernel/drivers/usb/serial/pl2303.ko: kernel/drivers/usb/serial/usbserial.ko > Doesn't it mean that pl2303 is dependent on usbserial? Yes, and so is the option module. But you are looking at a wierd device that somehow thinks it is both an option device, and a pl2303 device, which are totally different chipsets. thanks, greg k-h _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies