Firefly开源社区

打印 上一主题 下一主题

有关rmmod时模块忙碌的问题

143

积分

0

威望

0

贡献

技术小白

积分
143

有关rmmod时模块忙碌的问题

发表于 2016-8-17 16:23:59      浏览:6075 | 回复:2        打印      只看该作者   [复制链接] 楼主
我写了一个驱动来控制黄色led,这是驱动文件
#include<linux/init.h>
#include<linux/module.h>
#include <linux/leds.h>

MODULE_LICENSE("GPL");
DEFINE_LED_TRIGGER(ledtrig_ir_click);


static int led_init(void)
{
        printk("turn on\n");
        led_trigger_register_simple("ir-user-click", &ledtrig_ir_click);
        led_trigger_event(ledtrig_ir_click, LED_FULL);
        return 0;
}

static void led_exit(void)
{
        printk("turn off\n");
        led_trigger_register_simple("ir-user-click", &ledtrig_ir_click);
        led_trigger_event(ledtrig_ir_click, LED_OFF);
}

module_init(led_init);
module_exit(led_exit);

然后就用了sudo insmod led.ko加载,灯也亮了,但是用sudo rmmod led.ko时却出现模块忙的问题,如下
firefly@firefly:~/temp/makepra/led$ lsmod
Module                  Size  Used by
led                      917  0
mali_kbase            159689  0
firefly@firefly:~/temp/makepra/led$ sudo rmmod led.ko
rmmod: ERROR: ../libkmod/libkmod-module.c:769 kmod_module_remove_module() could not remove 'led': Device or resource busy
rmmod: ERROR: could not remove module led.ko: Device or resource busy

请问这是怎么回事?网上说是缺少exit函数,但是我的.c文件里有,每次只能重启开发板才能卸载模块。
回复

使用道具 举报

363

积分

0

威望

0

贡献

技术达人

Rank: 2

积分
363
发表于 2016-8-18 14:18:56        只看该作者  沙发
insmod    xxx.ko   
rmmod   xxx
回复

使用道具 举报

143

积分

0

威望

0

贡献

技术小白

积分
143
发表于 2016-8-18 14:22:19        只看该作者  板凳
HelloBirthday 发表于 2016-8-18 14:18
insmod    xxx.ko   
rmmod   xxx

你这个我试过,会提示权限不足,进入root后会报原来的错误
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表