Commit 04015e3f authored by Christoph Hellwig's avatar Christoph Hellwig

proc: don't detour through seq->private to get the inode

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
parent 76f668be
...@@ -677,20 +677,22 @@ get_children_pid(struct inode *inode, struct pid *pid_prev, loff_t pos) ...@@ -677,20 +677,22 @@ get_children_pid(struct inode *inode, struct pid *pid_prev, loff_t pos)
static int children_seq_show(struct seq_file *seq, void *v) static int children_seq_show(struct seq_file *seq, void *v)
{ {
seq_printf(seq, "%d ", pid_nr_ns(v, proc_pid_ns(seq->private))); struct inode *inode = file_inode(seq->file);
seq_printf(seq, "%d ", pid_nr_ns(v, proc_pid_ns(inode)));
return 0; return 0;
} }
static void *children_seq_start(struct seq_file *seq, loff_t *pos) static void *children_seq_start(struct seq_file *seq, loff_t *pos)
{ {
return get_children_pid(seq->private, NULL, *pos); return get_children_pid(file_inode(seq->file), NULL, *pos);
} }
static void *children_seq_next(struct seq_file *seq, void *v, loff_t *pos) static void *children_seq_next(struct seq_file *seq, void *v, loff_t *pos)
{ {
struct pid *pid; struct pid *pid;
pid = get_children_pid(seq->private, v, *pos + 1); pid = get_children_pid(file_inode(seq->file), v, *pos + 1);
put_pid(v); put_pid(v);
++*pos; ++*pos;
...@@ -711,17 +713,7 @@ static const struct seq_operations children_seq_ops = { ...@@ -711,17 +713,7 @@ static const struct seq_operations children_seq_ops = {
static int children_seq_open(struct inode *inode, struct file *file) static int children_seq_open(struct inode *inode, struct file *file)
{ {
struct seq_file *m; return seq_open(file, &children_seq_ops);
int ret;
ret = seq_open(file, &children_seq_ops);
if (ret)
return ret;
m = file->private_data;
m->private = inode;
return ret;
} }
const struct file_operations proc_tid_children_operations = { const struct file_operations proc_tid_children_operations = {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment