Chinaunix

标题: linux 2.6内核module_init起动顺序问题? [打印本页]

作者: s.t_seeyou    时间: 2009-11-17 17:34
标题: linux 2.6内核module_init起动顺序问题?
想在2.6.15内核中加入一些网络参数。这部分以单独的目录项 如linux-2.6.15/cfg/下, 在启动时从flash中得到参数的内容,

所以这部分中必要在网络模块加载前以经启动,这部分提供一些全局变量与调用接口供linux-2.6.15/net/下的模块调用,二者都以module_init方式加入内核,然而2.6中初始化函数都用module_init(fn)声明的话,则实际上等价于device_initcall(fn), 执行顺序则不定,所以我将前者放在linux-2.6.15/下主makefile最先编译,但最后运行时出现段错误。

问题可能出现在下:1。执行顺序不对,在cfg/下定义的全局变量没有定义,后面调用不到?
                  2. 确认一下2.6中的全局变量定义方法,为了保险,我在cfg中定义后,用EXPORT_SYMBOL(不一定需要,主要用于模块间的?)导出,然后在调用前extern先声明,

请大家看看看问题出在那?




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2