最简单的示例程序,写两个模块,分别为A和B,在A中导出了一些函数,而在B中使用A导出的函数。模块都使用GPL。
问题是在2.6.22和2.6.24下运行加载都很正常,当在2.6.26内核下加载时却出现了了Unknow symbol in module的错误。详见下面的具体描述。
两个模块的源码如下:
问题是在2.6.22和2.6.24下运行加载都很正常,当在2.6.26内核下加载时却出现了了Unknow symbol in module的错误。详见下面的具体描述。
两个模块的源码如下:
-
C/C++ code
-
// Module A (mod_a.c) #include < linux / init.h > #include < linux / module.h > #include < linux / kernel.h > static int func1( void ) { printk( " In Func: %s...\n " ,__func__); return 0 ; } // Export symbol func1 EXPORT_SYMBOL(func1); static int __init hello_init( void ) { printk( " Module 1,Init!\n " ); return