如何加载预编译内核中已存在的已修改内核模块

时间:2013-06-03 15:49:33

标签: linux linux-kernel linux-device-driver kernel-module kbuild

一种方法是再次构建内核源代码,使原始模块可加载,需要修改。因此可以删除原始模块并可以插入修改后的模块。但这是一个耗时的过程 我想知道是否有其他方法来加载修改后的模块。

我在MD驱动程序中做了一些修改,并试图在预编译的内核上加载它。 insmod失败,出现以下错误信息:

  

md_mod:导出重复符号bitmap_close_sync(由内核拥有)
  insmod:插入'md-mod.ko'时出错:-1模块格式无效

如果可以,请提供反馈。任何帮助,将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:3)

此错误显示是因为 bitmap_close_sync符号已由内核导出,您再次尝试在重新导出相同的符号。尽量不要导出符号,编译并尝试插入模块(模块应该根据插入它的内核版本进行编译)。浏览stackoverflow链接What will happen if two kernel module export same symbol。希望它能回答你的问题: - )。