rt_cpu_seq_next should increase position index
authorVasily Averin <vvs@virtuozzo.com>
Thu, 23 Jan 2020 07:11:35 +0000 (10:11 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 1 Oct 2020 11:12:30 +0000 (13:12 +0200)
[ Upstream commit a3ea86739f1bc7e121d921842f0f4a8ab1af94d9 ]

if seq_file .next fuction does not change position index,
read after some lseek can generate unexpected output.

https://bugzilla.kernel.org/show_bug.cgi?id=206283
Signed-off-by: Vasily Averin <vvs@virtuozzo.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/ipv4/route.c

index ed835ca0687988dfa51a6c9f810b45a2059dd84f..6fcb12e083d99cca99c9e0bb2beb8cee45420276 100644 (file)
@@ -276,6 +276,7 @@ static void *rt_cpu_seq_next(struct seq_file *seq, void *v, loff_t *pos)
                *pos = cpu+1;
                return &per_cpu(rt_cache_stat, cpu);
        }
+       (*pos)++;
        return NULL;
 
 }