Я пишу символьное устройство с модулем ядра 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)
, но я не могу получить struct proc_dir_entry *
папки pid, в которую я хочу написать, потому что я не могу включить fs/proc/internal.h
в PDEопределено.
Вот что я пытался сделать:
struct file *fp = filp_open("/proc/1",....);
struct proc_dir_entry *parent ;
parent = PDE(fp->f_dentry->d_inode);
Любое решение?