insmod: error inserting './igb.ko': -1 Unknown symbol in module 的问题所在

编译驱动的时候碰到了  insmod: error inserting './igb.ko': -1 Unknown symbol in module 的问题,在网上看了下,说是查看 dmesg | tail 看输出信息中的Unknown symbol,加载上这些模块就好。我的输出信息是:

1
2
3
4
5
[ 3548.357465] igb: Unknown symbol dca_remove_requester
[ 3548.358569] igb: Unknown symbol dca_add_requester
[ 3548.358814] igb: Unknown symbol dca_unregister_notify
[ 3548.358817] igb: Unknown symbol dca_register_notify
[ 3548.358924] igb: Unknown symbol dca3_get_tag

但是我在系统中查看

dca_remove_requester

dca_add_requester

dca_unregister_notify

dca_register_notify

dca3_get_tag

5个模块是没有找到,细细一想,估计是由于模块依赖的其他模块没有加载导致的。

直接用: modinfo  ./igb.ko | grep depend   找模块的依赖,结果如下,

depends:        dca

然后再执行: 

localhost:/opt/igb/igb-4.0.17/src #  modprobe dca

localhost:/opt/igb/igb-4.0.17/src #  insmod ./igb.ko 


一切OK,嘿嘿,看来以后加载模块之前还是要先看看他的依赖是不是已经加载了阿。


附:《模块加载常见错误》

  1. insmod: error inserting './igb.ko': -1 Unknown symbol in module           --->    依赖的模块没有加载,需要先加载 depends 中列出的模块

  2. insmod: error inserting './igb.ko': -1 Operation not permitted                --->    这当然是你用普通用户执行才出现的错误咯

  3. insmod: error inserting './igb.ko': -1 Invalid module format                    --->    模块的vermagic(就是编译内核的环境的内核版本)和当前系统不相匹配

  4. insmod: error inserting './aacraid.ko': -1 No such device                       --->    模块是对的,只是没有相应的设备

呵呵,其他的还没收集,等想起来了再加上。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值