There are two redundant assignments in the traverse() function, because the while loop will break after these two assignments, and after that the variable index will be assigned to m->index again. Signed-off-by: Peng Donglin <dolinux.peng@xxxxxxxxx> --- fs/seq_file.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/fs/seq_file.c b/fs/seq_file.c index eea09f6..2298656 100644 --- a/fs/seq_file.c +++ b/fs/seq_file.c @@ -120,14 +120,12 @@ static int traverse(struct seq_file *m, loff_t offset) if (pos + m->count > offset) { m->from = offset - pos; m->count -= m->from; - m->index = index; break; } pos += m->count; m->count = 0; if (pos == offset) { index++; - m->index = index; break; } p = m->op->next(m, p, &index); -- 1.9.1