Re: [PATCH] net: reset ip_summed in skb_tunnel_rx()
From: Jesse Gross <hidden>
Date: 2010-08-29 15:35:02
From: Jesse Gross <hidden>
Date: 2010-08-29 15:35:02
On Sun, Aug 29, 2010 at 12:48 AM, Eric Dumazet [off-list ref] wrote:
It seems we forget to reset skb->ip_summed to CHECKSUM_NONE in various tunnels (gre, ipip, sit, ip6_tunnel), before re-entering stack. Add ip_summed initialization in skb_tunnel_rx(), and remove it from ipmr / ip6mr Signed-off-by: Eric Dumazet <redacted>
This is intentional behavior. For CHECKSUM_COMPLETE packets we subtract off the checksum of the encapsulating headers that we remove so we can still get the benefit of checksum hardware for the inner packet as well. GRE does this using skb_postpull_rcsum(), for IPIP it is implicit because the outer IP header was already removed, etc.