lockdep: Simplify lockdep_chains seqfile code
- make lc_next() call lc_start() - use lock_chains directly instead of storing it in m->private Signed-off-by: Li Zefan <lizf@cn.fujitsu.com> Cc: Peter Zijlstra <peterz@infradead.org> LKML-Reference: <4A88ED57.5060609@cn.fujitsu.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
8109e1de85
commit
12aac19d4b
1 changed files with 7 additions and 30 deletions
|
@ -113,26 +113,6 @@ static const struct file_operations proc_lockdep_operations = {
|
|||
};
|
||||
|
||||
#ifdef CONFIG_PROVE_LOCKING
|
||||
static void *lc_next(struct seq_file *m, void *v, loff_t *pos)
|
||||
{
|
||||
struct lock_chain *chain;
|
||||
|
||||
(*pos)++;
|
||||
|
||||
if (v == SEQ_START_TOKEN)
|
||||
chain = m->private;
|
||||
else {
|
||||
chain = v;
|
||||
|
||||
if (*pos - 1 < nr_lock_chains)
|
||||
chain = lock_chains + (*pos - 1);
|
||||
else
|
||||
chain = NULL;
|
||||
}
|
||||
|
||||
return chain;
|
||||
}
|
||||
|
||||
static void *lc_start(struct seq_file *m, loff_t *pos)
|
||||
{
|
||||
if (*pos == 0)
|
||||
|
@ -144,6 +124,12 @@ static void *lc_start(struct seq_file *m, loff_t *pos)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
static void *lc_next(struct seq_file *m, void *v, loff_t *pos)
|
||||
{
|
||||
(*pos)++;
|
||||
return lc_start(m, pos);
|
||||
}
|
||||
|
||||
static void lc_stop(struct seq_file *m, void *v)
|
||||
{
|
||||
}
|
||||
|
@ -184,16 +170,7 @@ static const struct seq_operations lockdep_chains_ops = {
|
|||
|
||||
static int lockdep_chains_open(struct inode *inode, struct file *file)
|
||||
{
|
||||
int res = seq_open(file, &lockdep_chains_ops);
|
||||
if (!res) {
|
||||
struct seq_file *m = file->private_data;
|
||||
|
||||
if (nr_lock_chains)
|
||||
m->private = lock_chains;
|
||||
else
|
||||
m->private = NULL;
|
||||
}
|
||||
return res;
|
||||
return seq_open(file, &lockdep_chains_ops);
|
||||
}
|
||||
|
||||
static const struct file_operations proc_lockdep_chains_operations = {
|
||||
|
|
Loading…
Reference in a new issue