kernel: skip GRO for packets bridged to other hosts

Eliminates excessive skb copying when bridging from LAN to WLAN on
ramips.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 44797
master
Felix Fietkau 10 years ago
parent 6c434d5f06
commit 270bc6427b
  1. 12
      target/linux/generic/patches-3.18/680-net-skip-gro-for-otherhost-packets.patch
  2. 12
      target/linux/generic/patches-3.19/680-net-skip-gro-for-otherhost-packets.patch
  3. 12
      target/linux/generic/patches-4.0/680-net-skip-gro-for-otherhost-packets.patch

@ -0,0 +1,12 @@
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -4003,6 +4003,9 @@ static enum gro_result dev_gro_receive(s
enum gro_result ret;
int grow;
+ if (skb->pkt_type == PACKET_OTHERHOST)
+ goto normal;
+
if (!(skb->dev->features & NETIF_F_GRO))
goto normal;

@ -0,0 +1,12 @@
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -3967,6 +3967,9 @@ static enum gro_result dev_gro_receive(s
enum gro_result ret;
int grow;
+ if (skb->pkt_type == PACKET_OTHERHOST)
+ goto normal;
+
if (!(skb->dev->features & NETIF_F_GRO))
goto normal;

@ -0,0 +1,12 @@
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -4005,6 +4005,9 @@ static enum gro_result dev_gro_receive(s
enum gro_result ret;
int grow;
+ if (skb->pkt_type == PACKET_OTHERHOST)
+ goto normal;
+
if (!(skb->dev->features & NETIF_F_GRO))
goto normal;
Loading…
Cancel
Save