我在自定义内核模块中创建了几个dentry
对象。securityfs
这是我的做法:
inst->output_file = securityfs_create_file("1",
S_IRUSR | S_IRGRP, uprp_dir, NULL,
&my_file_ops);
inst->output_file = securityfs_create_file("2",
S_IRUSR | S_IRGRP, uprp_dir, NULL,
&my_file_ops);
// and so on
我已经为my_file_ops
. 然而,问题是所有 dentry
对象都调用了以下函数:
static int ct_open(struct inode *inode, struct file *file)
然后继续使用:
static void *my_seq_ops_start (struct seq_file *m, loff_t *pos)
问题是,我如何确定用户想要读取的 dentry 对象(在这些函数中的任何一个中)?- 意思是我想为文件1
和2
.