ipv6: update skb->csum when CE mark is propagated
authorEric Dumazet <edumazet@google.com>
Fri, 15 Jan 2016 12:56:56 +0000 (04:56 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 31 Jan 2016 19:29:01 +0000 (11:29 -0800)
commita744010bbd580833f1dfa1f274eca00175c78782
tree3aa2f61a234f822218ab53029c61c635db759bcc
parent35987ff2eaa05d70154c5bd28ebb2b70a7d8368b
ipv6: update skb->csum when CE mark is propagated

[ Upstream commit 34ae6a1aa0540f0f781dd265366036355fdc8930 ]

When a tunnel decapsulates the outer header, it has to comply
with RFC 6080 and eventually propagate CE mark into inner header.

It turns out IP6_ECN_set_ce() does not correctly update skb->csum
for CHECKSUM_COMPLETE packets, triggering infamous "hw csum failure"
messages and stack traces.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
include/net/inet_ecn.h
net/ipv6/xfrm6_mode_tunnel.c