summaryrefslogtreecommitdiff
path: root/target/linux/generic/patches-3.10/686-flow_dissector-clean-up-IPIP-case.patch
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2014-02-20 17:07:44 +0000
committerGabor Juhos <juhosg@openwrt.org>2014-02-20 17:07:44 +0000
commitab6e3af7fc94d3c04e13f468c56c097f88644a7c (patch)
treeeb28ac3f54f3b22a4363a48d096ad0509318600e /target/linux/generic/patches-3.10/686-flow_dissector-clean-up-IPIP-case.patch
parentfcbfe67e2affc07e398726c18dcac1b0844df984 (diff)
downloadmtk-20170518-ab6e3af7fc94d3c04e13f468c56c097f88644a7c.zip
mtk-20170518-ab6e3af7fc94d3c04e13f468c56c097f88644a7c.tar.gz
mtk-20170518-ab6e3af7fc94d3c04e13f468c56c097f88644a7c.tar.bz2
kernel/3.10: improve fq_codel hashing for 6in4 6to4 801.ad and IPIP cases
This is a backport of code to improve the quality of fq_codel hashing for 3.10 for some encapsulated protocols. Not needed in 3.11 and later. Patch-by: Dave Taht <dave.taht@bufferbloat.net> Patchwork: http://patchwork.openwrt.org/patch/4902/ Signed-off-by: Gabor Juhos <juhosg@openwrt.org> SVN-Revision: 39640
Diffstat (limited to 'target/linux/generic/patches-3.10/686-flow_dissector-clean-up-IPIP-case.patch')
-rw-r--r--target/linux/generic/patches-3.10/686-flow_dissector-clean-up-IPIP-case.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.10/686-flow_dissector-clean-up-IPIP-case.patch b/target/linux/generic/patches-3.10/686-flow_dissector-clean-up-IPIP-case.patch
new file mode 100644
index 0000000..467ca00
--- /dev/null
+++ b/target/linux/generic/patches-3.10/686-flow_dissector-clean-up-IPIP-case.patch
@@ -0,0 +1,25 @@
+From de03a7f8eddba389668e3c35d4a31d985d29778f Mon Sep 17 00:00:00 2001
+From: Tom Herbert <therbert@google.com>
+Date: Mon, 29 Jul 2013 11:07:36 -0700
+Subject: [PATCH 3/5] flow_dissector: clean up IPIP case
+
+Explicitly set proto to ETH_P_IP and jump directly to ip processing.
+
+Signed-off-by: Tom Herbert <therbert@google.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ net/core/flow_dissector.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/net/core/flow_dissector.c
++++ b/net/core/flow_dissector.c
+@@ -139,7 +139,8 @@ ipv6:
+ break;
+ }
+ case IPPROTO_IPIP:
+- goto again;
++ proto = htons(ETH_P_IP);
++ goto ip;
+ default:
+ break;
+ }