LKM如何取消阻止vfs_read?

问题描述

我有一个内核模块,我需要从串行端口读取数据。我使用filp_open()打开串行端口设备,然后在线程上循环调用vfs_read()从串行设备获取数据。

问题是当我想rmmod模块时。我不知道如何“取消阻止” vfs_read,因为它将阻止,直到在串行端口上有新数据可用为止。

我试图发送信号并在vfs_read线程上调用awak_up_process,但是它们都不起作用。

我知道我可以使用O_NONBLOCK打开串行端口,但是我想避免不得不继续轮询设备以获取新数据。

谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)