]> git.baikalelectronics.ru Git - kernel.git/commit
ipv6: gro: fix CHECKSUM_COMPLETE support
authorEric Dumazet <edumazet@google.com>
Tue, 20 May 2014 04:56:34 +0000 (21:56 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 21 May 2014 21:18:47 +0000 (17:18 -0400)
commit2846cab557c2f53f1ef72e2308b74dbb594617b1
treec69385d148fb52f0f8f659f8261497ab428d820d
parent1d45726a64e2a7f585e56dc743522ecf1a95d3ee
ipv6: gro: fix CHECKSUM_COMPLETE support

When GRE support was added in linux-3.14, CHECKSUM_COMPLETE handling
broke on GRE+IPv6 because we did not update/use the appropriate csum :

GRO layer is supposed to use/update NAPI_GRO_CB(skb)->csum instead of
skb->csum

Tested using a GRE tunnel and IPv6 traffic. GRO aggregation now happens
at the first level (ethernet device) instead of being done in gre
tunnel. Native IPv6+TCP is still properly aggregated.

Fixes: 658e424293aee ("net-gre-gro: Add GRE support to the GRO stack")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Jerry Chu <hkchu@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/ip6_offload.c
net/ipv6/tcpv6_offload.c