如何卸载这个模块(调用了try_module_get函数)?
模块为chrdev.ko,内核为2.6.22.6
模块的init_module和cleanup_module:
int init_module(void){
Major=register_chrdev(0,"hello",&fops);
if(Major<0){
printk(KERN_ALERT"failure\n");
}else{
printk(KERN_ALERT"success\n");
printk(KERN_ALERT"The major number is %d\n",Major);
}
try_module_get(THIS_MODULE);
return 0;
}
void cleanup_module(void){
int ret=unregister_chrdev(Major,"hello");
if(ret<0) printk(KERN_ALERT"failure\n");
else printk(KERN_ALERT"success\n");
}
编译之后,然后insmod chrdev.ko
然后lsmod|grep chrdev
输出为:chrdev 6148 1
接着rmmod -f chrdev
输出为:resource temporarily unavailable
谁能告诉我如何卸载这个模块?谢谢!