内核 4.20 内核模块中的未知符号 vfs_write (err -2)

Unknown symbol vfs_write (err -2) in kernel module in kernel 4.20

我正在尝试设置键盘记录器内核模块。除了最终的日志文件,一切都很好。我正在尝试在模块退出时在 /tmp/ 文件中写入日志。

我使用的是最新的内核版本 4.20。我正在尝试使用 vfs_write,但在编译时,它告诉我

"WARNING : vfs_write [...] undefined !"

当我尝试插入模块时它说我

"Unknown symbol vfs_write (err -2)"

我正在使用这种方法来完成这项工作:Read/write files within a Linux kernel module

告诉我我做错了什么或如何正确打开/写入文件 x)。 谢谢大家。

自 Linux 内核版本 4.14 起,vfs_write 函数不再导出 以在模块中使用。请改用 kernel_write。它具有相同的签名:

ssize_t kernel_write(struct file *file, const void *buf, size_t count,
            loff_t *pos)