insmod ko failed analysis

Linux insmod(英文全拼:install module)命令用于载入模块。

Linux有许多功能是通过模块的方式,在需要时才载入kernel。如此可使kernel较为精简,进而提高效率,以及保有较大的弹性。这类可载入的模块,通常是设备驱动程序。

当遇到insmod failed 时候,可以这样debug。

一、分析提示error

1.Module 已经存在。

insmod test.ko
insmod: failed to load test.ko: File exists

这个提示,原因是此test module已经insmod ,我们可以通过lsmod 查看,test module 是否存在?

结果是,确实已经存在。

Module                  Size  Used by

test             3756032  10 test11

2.kernel version 不一致。

insmod snd-usb-audio.ko
[  782.186320][T26964] [pid:26964,cpu1,insmod]snd_usb_audio: disagrees about version of symbol module_layout
insmod: failed to load snd-usb-audio.ko: Exec format error

这个error表示kernel version 不匹配,需要使用对应version的kernel 编译ko.

怎么获取当前platform 使用的kernel version 呢&#x

猜你喜欢

转载自blog.csdn.net/dreamDay2016_11_11/article/details/128671658