如何在proc / pid

时间:2018-10-10 11:07:08

标签: c linux-kernel filesystems kernel-module

我正在使用Linux内核模块编写字符设备,内核版本为:4.14。 基本上,具有给定tgid的用户空间进程可以通过ioctl与我的设备进行交互。

我需要在/ proc / pid中创建一个新目录(其中pid是与我的设备进行交互的进程的tgid),以便可以在该新目录中创建一些带有一些日志的文件。

是否可以在/ proc / pid中创建一个新目录而无需重新编译Linux内核?

尤其是我尝试使用:

struct proc_dir_entry *proc_create(
const char *name, umode_t mode,
struct proc_dir_entry *parent,
const struct file_operations *proc_fops)

但是我无法获得要写入的pid文件夹的struct proc_dir_entry *,因为我无法在定义PDE的地方包括fs/proc/internal.h

这是我尝试做的事情:

struct file *fp = filp_open("/proc/1",....);
struct proc_dir_entry *parent ;
parent = PDE(fp->f_dentry->d_inode);

任何解决方案吗?

0 个答案:

没有答案