参考天嵌移植手册写了一个小的测试程序hello.c,想试试动态加裁与卸载模块的功能,结果只能加裁不能卸载.
在PC的linux下编译出hello.ko文件后使用rz命令传输到开发板的文件系统上的。下面是操作的过程:
100% 18 KB 9 KB/s 00:00:02 0 Errors
妑z 3.48 01-27-98 finished.
/ # insmod hello.ko
hello,guoxiao!
this is first driver test
/ # lsmod
hello 1448 0 - Live 0xbf000000
/ # rmmod hello.ko
rmmod: chdir(/lib/modules): No such file or directory
/ # cd lib
/lib # mkdir modules
/lib # cd
/ # rmmod hello.ko
rmmod: chdir(2.6.30.4): No such file or directory
/ # lsmod
hello 1448 0 - Live 0xbf000000
/ # cd /lib/modules/
/lib/modules # mkdir 2.6.30.4
/lib/modules # ls
2.6.30.4
/lib/modules # cd
/ # rmmod hello.ko
/ # lsmod
hello 1448 0 - Live 0xbf000000
/ #
/ # insmod hello.ko
insmod: can't insert 'hello.ko': File exists
/ #
一开始执行rmmod时提示缺少目录,我就按提示建了2个目录,之后不会提示了,但却还是不能卸载
找到原因:加裁模块时使用“insmod hello.ko"而删除模块时用"rmmod hello”就可以了。之前一直以为要用“rmmod hello.ko",所以一直卸载不掉。
转自:http://bbs.embedsky.net/forum.php?mod=viewthread&tid=10578