我正在尝试修改Linux内核驱动程序之一。
但是,当我尝试使用insmod时,内核会不断显示“未知符号”错误消息。
我认为我配置的内容与原始版本有所不同。:(
所以这是我的问题。
如何配置与原始模块完全相同的配置?
有什么方法可以轻松地为某个内核映像进行配置吗?
此错误有两种可能性:
未知的符号表示您正在使用驱动程序中的任何符号,这些符号可以是FUNCTION或Variable,这些符号在加载模块时内核无法找到。当您对驱动程序进行insmod时,请执行dmesg并查看所有Symbols(内核)无法找到的内容。在修改驱动程序时,可能会错误地使用了一些未在任何地方定义的变量或函数。在修改后的代码中查找任何“外部变量”或任何拼写错误;)。
您的驱动程序依赖于其他模块。在这里,根据相关含义,驱动程序正在使用的功能或变量很少,这些功能或变量是由其他模块加载到内核的。在这种情况下,您必须先加载该模块,然后再加载模块。
未知符号不是配置问题。配置问题会给其他错误。
如果您需要更多帮助,请在此处粘贴dmesg输出。
问候。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句