【问题标题】:insmod Unknown symbol in moduleinsmod 模块中的未知符号
【发布时间】:2013-10-29 15:23:00
【问题描述】:

我正在尝试将 edac 模块移植到内核并得到以下错误:

> insmod /lib/modules/2.6.34.12/kernel/drivers/edac/edac_core.ko
insmod: error inserting '/lib/modules/2.6.34.12/kernel/drivers/edac/edac_core.ko': -1 Unknown symbol in module

以下是dmesg日志:

edac_core: no symbol version for "function"
edac_core: Unknown symbol "function"

【问题讨论】:

标签: linux memory fault


【解决方案1】:

这个错误可能有几个原因。其中之一可能是名为“function”的符号仅作为 GPL 导出。或者可能是您正在加载模块的内核没有那个“功能”符号,但它在其他一些内核版本中。

【讨论】:

  • “函数”的符号不会仅作为 GPL 导出。导出符号的条目也存在于kallsyms 中。我确信不会有许可错误,因为我的模块中已经包含了MODULE_LICENSE("GPL");。使用CONFIG_MODVERSIONS=y,我收到此警告:WARNING: "function" [drivers/edac/edac_core.ko] has no CRC! 尽管其他符号的 CRC 是正确的。如何删除此警告?
  • 也许这个帖子可以帮助你:lkml.org/lkml/2013/8/27/202。在讨论结束时,它将内核配置中的 CONFIG_PHYSICAL_ALIGN 从 0x100000 更改为 0x1000000。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-01-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-30
  • 2012-08-06
  • 2017-03-31
相关资源
最近更新 更多