Re: Do you know the bug of EXPORT_SYMBOL()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,  
    This is the place where modprobe comes into play .If you have dependent module the on your module then it is recommended to use modprobe .
After compiling your module run :
1. depmod -a
2. modprobe mod1
3. modprobe mod2

And as far as i know CONFIG_MODVERSION is basically for the module signature according to which you can't directly insert a .ko file compiled in another system.


On 24 July 2015 at 11:19, Navy <navych@xxxxxxx> wrote:
Hi
To my understanding, EXPORT_SYMBOL() is used to export a symbol in
kernel/modules. The the address of the all sysbols is in /proc/kallsyms.
Only symbols exported by EXPORT_SYMBOL() is listed its CRC information
in Module.symvers. So I think the CRC is the key to export a symbol.
I do an experiment:

       ---mdir
           |
           |---Mod1
           |    |---mod1.c
           |    |---Makefile
           |
           |---Mod2
                |---mod2.c
                |---Makefile

mod1.c define function *void myfunc(void)* and exported by EXPORT_SYMBOL()
and the CRC info is showed in Module.symvers. mod2.c reference *myfunc* and
compiled successfully. BUT when mod2.ko is insmoded, "unknown symbol" is
complained. mod2.ko CAN'T BE INSMOD.
I solve this problem by the method in Documentation/kbuild/modules.txt and
heard this is a bug from kernel 2.6.

Why this bug is not be fixed?


_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux