net: ipv6/gre: Add GRO support
authorEran Ben Elisha <eranbe@mellanox.com>
Mon, 7 May 2018 07:45:27 +0000 (10:45 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 8 May 2018 03:50:27 +0000 (23:50 -0400)
commit0c1dd2a162e02b6bdcbae8e493215a945acbf73b
tree694dac22c6fd289ad2adf675bea54c17531fd43e
parent6f2f8212bfdf3ec6dd60f1f0725dc84c574b768b
net: ipv6/gre: Add GRO support

Add GRO capability for IPv6 GRE tunnel and ip6erspan tap, via gro_cells
infrastructure.

Performance testing: 55% higher badwidth.
Measuring bandwidth of 1 thread IPv4 TCP traffic over IPv6 GRE tunnel
while GRO on the physical interface is disabled.
CPU: Intel Xeon E312xx (Sandy Bridge)
NIC: Mellanox Technologies MT27700 Family [ConnectX-4]
Before (GRO not working in tunnel) : 2.47 Gbits/sec
After  (GRO working in tunnel)     : 3.85 Gbits/sec

Signed-off-by: Eran Ben Elisha <eranbe@mellanox.com>
Signed-off-by: Tariq Toukan <tariqt@mellanox.com>
CC: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/ip6_gre.c