diff options
author | Felix Fietkau <nbd@openwrt.org> | 2015-03-16 04:19:09 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2015-03-16 04:19:09 +0000 |
commit | 03494450091b50a3d87f51eb9e3beff00ff9da6c (patch) | |
tree | e52672e5e40ce6d5795631ee15027ac3dd430122 /target/linux/generic/patches-4.0/680-net-skip-gro-for-otherhost-packets.patch | |
parent | 0e879af4add196a17998ce75aed6a6938c6c624d (diff) | |
download | upstream-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
Diffstat (limited to 'target/linux/generic/patches-4.0/680-net-skip-gro-for-otherhost-packets.patch')
-rw-r--r-- | target/linux/generic/patches-4.0/680-net-skip-gro-for-otherhost-packets.patch | 14 |
1 files changed, 14 insertions, 0 deletions
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 |