aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2015-03-16 04:19:09 +0000
committerFelix Fietkau <nbd@openwrt.org>2015-03-16 04:19:09 +0000
commit03494450091b50a3d87f51eb9e3beff00ff9da6c (patch)
treee52672e5e40ce6d5795631ee15027ac3dd430122
parent0e879af4add196a17998ce75aed6a6938c6c624d (diff)
downloadupstream-03494450091b50a3d87f51eb9e3beff00ff9da6c.tar.gz
upstream-03494450091b50a3d87f51eb9e3beff00ff9da6c.tar.bz2
upstream-03494450091b50a3d87f51eb9e3beff00ff9da6c.zip
kernel: add missing description for GRO optimization patch
Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44798 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--target/linux/generic/patches-3.18/680-net-skip-gro-for-otherhost-packets.patch14
-rw-r--r--target/linux/generic/patches-3.19/680-net-skip-gro-for-otherhost-packets.patch14
-rw-r--r--target/linux/generic/patches-4.0/680-net-skip-gro-for-otherhost-packets.patch14
3 files changed, 42 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.18/680-net-skip-gro-for-otherhost-packets.patch b/target/linux/generic/patches-3.18/680-net-skip-gro-for-otherhost-packets.patch
index 3adc4e37bb..2a65c0be61 100644
--- a/target/linux/generic/patches-3.18/680-net-skip-gro-for-otherhost-packets.patch
+++ b/target/linux/generic/patches-3.18/680-net-skip-gro-for-otherhost-packets.patch
@@ -1,3 +1,17 @@
+Subject: NET: skip GRO for otherhost packets
+
+For network drivers using napi_gro_receive, packets are run through GRO,
+even when the destination MAC address does not match, and they're supposed
+to be delivered to another host behind a different bridge port.
+
+This can be very expensive, because for drivers without TSO or scatter-
+gather, this can only be undone by copying the skb and checksumming it
+again.
+
+Fix this by leaving skbs with PACKET_OTHERHOST untouched.
+
+Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -4003,6 +4003,9 @@ static enum gro_result dev_gro_receive(s
diff --git a/target/linux/generic/patches-3.19/680-net-skip-gro-for-otherhost-packets.patch b/target/linux/generic/patches-3.19/680-net-skip-gro-for-otherhost-packets.patch
index e3fa9172e2..292d02174a 100644
--- a/target/linux/generic/patches-3.19/680-net-skip-gro-for-otherhost-packets.patch
+++ b/target/linux/generic/patches-3.19/680-net-skip-gro-for-otherhost-packets.patch
@@ -1,3 +1,17 @@
+Subject: NET: skip GRO for otherhost packets
+
+For network drivers using napi_gro_receive, packets are run through GRO,
+even when the destination MAC address does not match, and they're supposed
+to be delivered to another host behind a different bridge port.
+
+This can be very expensive, because for drivers without TSO or scatter-
+gather, this can only be undone by copying the skb and checksumming it
+again.
+
+Fix this by leaving skbs with PACKET_OTHERHOST untouched.
+
+Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -3967,6 +3967,9 @@ static enum gro_result dev_gro_receive(s
diff --git a/target/linux/generic/patches-4.0/680-net-skip-gro-for-otherhost-packets.patch b/target/linux/generic/patches-4.0/680-net-skip-gro-for-otherhost-packets.patch
index fc3625848b..62e0bde8dd 100644
--- a/target/linux/generic/patches-4.0/680-net-skip-gro-for-otherhost-packets.patch
+++ b/target/linux/generic/patches-4.0/680-net-skip-gro-for-otherhost-packets.patch
@@ -1,3 +1,17 @@
+Subject: NET: skip GRO for otherhost packets
+
+For network drivers using napi_gro_receive, packets are run through GRO,
+even when the destination MAC address does not match, and they're supposed
+to be delivered to another host behind a different bridge port.
+
+This can be very expensive, because for drivers without TSO or scatter-
+gather, this can only be undone by copying the skb and checksumming it
+again.
+
+Fix this by leaving skbs with PACKET_OTHERHOST untouched.
+
+Signed-off-by: Felix Fietkau <nbd@openwrt.org>
+
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -4005,6 +4005,9 @@ static enum gro_result dev_gro_receive(s