summaryrefslogtreecommitdiff
path: root/target/linux/generic/patches-4.1/096-ipv4-off-by-one-in-continuation-handling-in-proc-net.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/generic/patches-4.1/096-ipv4-off-by-one-in-continuation-handling-in-proc-net.patch')
-rw-r--r--target/linux/generic/patches-4.1/096-ipv4-off-by-one-in-continuation-handling-in-proc-net.patch46
1 files changed, 0 insertions, 46 deletions
diff --git a/target/linux/generic/patches-4.1/096-ipv4-off-by-one-in-continuation-handling-in-proc-net.patch b/target/linux/generic/patches-4.1/096-ipv4-off-by-one-in-continuation-handling-in-proc-net.patch
deleted file mode 100644
index aa31641..0000000
--- a/target/linux/generic/patches-4.1/096-ipv4-off-by-one-in-continuation-handling-in-proc-net.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 25b97c016b26039982daaa2c11d83979f93b71ab Mon Sep 17 00:00:00 2001
-From: Andy Whitcroft <apw@canonical.com>
-Date: Thu, 13 Aug 2015 20:49:01 +0100
-Subject: [PATCH] ipv4: off-by-one in continuation handling in /proc/net/route
-
-When generating /proc/net/route we emit a header followed by a line for
-each route. When a short read is performed we will restart this process
-based on the open file descriptor. When calculating the start point we
-fail to take into account that the 0th entry is the header. This leads
-us to skip the first entry when doing a continuation read.
-
-This can be easily seen with the comparison below:
-
- while read l; do echo "$l"; done </proc/net/route >A
- cat /proc/net/route >B
- diff -bu A B | grep '^[+-]'
-
-On my example machine I have approximatly 10KB of route output. There we
-see the very first non-title element is lost in the while read case,
-and an entry around the 8K mark in the cat case:
-
- +wlan0 00000000 02021EAC 0003 0 0 400 00000000 0 0 0
- -tun1 00C0AC0A 00000000 0001 0 0 950 00C0FFFF 0 0 0
-
-Fix up the off-by-one when reaquiring position on continuation.
-
-Fixes: 8be33e955cb9 ("fib_trie: Fib walk rcu should take a tnode and key instead of a trie and a leaf")
-BugLink: http://bugs.launchpad.net/bugs/1483440
-Acked-by: Alexander Duyck <alexander.h.duyck@redhat.com>
-Signed-off-by: Andy Whitcroft <apw@canonical.com>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- net/ipv4/fib_trie.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/net/ipv4/fib_trie.c
-+++ b/net/ipv4/fib_trie.c
-@@ -2457,7 +2457,7 @@ static struct key_vector *fib_route_get_
- key = l->key + 1;
- iter->pos++;
-
-- if (pos-- <= 0)
-+ if (--pos <= 0)
- break;
-
- l = NULL;