lockdep: Fix missing entry in /proc/lock_stat
authorLi Zefan <lizf@cn.fujitsu.com>
Mon, 17 Aug 2009 05:39:33 +0000 (13:39 +0800)
committerIngo Molnar <mingo@elte.hu>
Mon, 17 Aug 2009 07:54:39 +0000 (09:54 +0200)
One entry is missing in the output of /proc/lock_stat.

The cause is, when ls_start() is called the 2nd time, we should
start from stats[@pos-1] but not stats[@pos], because pos == 0
is the header.

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Cc: Peter Zijlstra <peterz@infradead.org>
LKML-Reference: <4A88ED15.20800@cn.fujitsu.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/lockdep_proc.c

index fba81f1..5dbe30b 100644 (file)
@@ -634,7 +634,7 @@ static void *ls_start(struct seq_file *m, loff_t *pos)
        if (*pos == 0)
                return SEQ_START_TOKEN;
 
-       data->iter = data->stats + *pos;
+       data->iter = data->stats + (*pos - 1);
        if (data->iter >= data->iter_end)
                data->iter = NULL;