From: David S. Miller Date: Fri, 24 Jan 2020 10:42:18 +0000 (+0100) Subject: Merge branch 'netdev-seq_file-next-functions-should-increase-position-index' X-Git-Tag: v5.10.7~3448^2~7 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=623c8d5c74c69a41573da5a38bb59e8652113f56;p=platform%2Fkernel%2Flinux-rpi.git Merge branch 'netdev-seq_file-next-functions-should-increase-position-index' Vasily Averin says: ==================== netdev: seq_file .next functions should increase position index In Aug 2018 NeilBrown noticed commit 1f4aace60b0e ("fs/seq_file.c: simplify seq_file iteration code and interface") "Some ->next functions do not increment *pos when they return NULL... Note that such ->next functions are buggy and should be fixed. A simple demonstration is dd if=/proc/swaps bs=1000 skip=1 Choose any block size larger than the size of /proc/swaps. This will always show the whole last line of /proc/swaps" Described problem is still actual. If you make lseek into middle of last output line following read will output end of last line and whole last line once again. $ dd if=/proc/swaps bs=1 # usual output Filename Type Size Used Priority /dev/dm-0 partition 4194812 97536 -2 104+0 records in 104+0 records out 104 bytes copied $ dd if=/proc/swaps bs=40 skip=1 # last line was generated twice dd: /proc/swaps: cannot skip to specified offset v/dm-0 partition 4194812 97536 -2 /dev/dm-0 partition 4194812 97536 -2 3+1 records in 3+1 records out 131 bytes copied There are lot of other affected files, I've found 30+ including /proc/net/ip_tables_matches and /proc/sysvipc/* This patch-set fixes files related to netdev@ https://bugzilla.kernel.org/show_bug.cgi?id=206283 ==================== Signed-off-by: David S. Miller --- 623c8d5c74c69a41573da5a38bb59e8652113f56