insmod module.ko

Bernhard Fischer rep.nop at aon.at
Tue Jul 11 07:32:45 UTC 2006


On Sun, Jul 09, 2006 at 10:57:56AM +1000, Jim wrote:
>Thanks Mike and all responses. The loading module works now after adding 
>a full path to the insmod. Now there is another issue. My module.ko 
>contains an i2c function i2c_add_driver() and other i2c functions. The 
>i2c has been built in kernel, but loading module.ko was crashed at 
>i2c_add_driver() in an exception of null address. The i2c functions were 
>not linked in module.ko. I am not clear whether the unresolved symbols 
>should be resolved in kernel module building process or in insmod 
>loading process. Could you clarify please? Does the insmod loading 
>process search unresolved symbols in kernel binary
>
>As I mentioned that the module.o was running fine in kernel 2.4. In 
>kernel 2.4, I did not even specify the full path to the insmod, it was 
>called just "insmod module.o". In kernel 2.6, I have to call "insmod 
>/usr/lib/2.6.8/kernel/module.ko" to make it works. I am not sure if I 
>was still missing something in kernel 2.6 loading process?

Sounds like you're missing modprobe..
The sequence would be
1) create a dependency file for your modules (see depmod.pl resp. depmod
on your host, eventually)
2) modprobe module; where module is without extension (guessed by
modprobe which also should load the prerequisites of 'module')

This is not busybox specific, there should be excentive documentation
out there which covers module loading.
HTH.



More information about the busybox mailing list