[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20161125055017.7053-1-elicooper@gmx.com>
Date: Fri, 25 Nov 2016 13:50:17 +0800
From: Eli Cooper <elicooper@....com>
To: netdev@...r.kernel.org, "David S . Miller" <davem@...emloft.net>,
Stephen Rothwell <sfr@...b.auug.org.au>
Subject: [PATCH net] sit: Set skb->protocol properly in ipip6_tunnel_xmit()
Similar to commit ae148b085876
("ip6_tunnel: Update skb->protocol to ETH_P_IPV6 in ip6_tnl_xmit()"),
sit tunnels also need to update skb->protocol; otherwise, TSO/GSO packets
might not be properly segmented, which causes the packets being dropped.
Reported-by: Stephen Rothwell <sfr@...b.auug.org.au>
Tested-by: Eli Cooper <elicooper@....com>
Cc: stable@...r.kernel.org
Signed-off-by: Eli Cooper <elicooper@....com>
---
net/ipv6/sit.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c
index b1cdf80..a05dceb 100644
--- a/net/ipv6/sit.c
+++ b/net/ipv6/sit.c
@@ -972,6 +972,7 @@ static netdev_tx_t ipip6_tunnel_xmit(struct sk_buff *skb,
}
skb_set_inner_ipproto(skb, IPPROTO_IPV6);
+ skb->protocol = htons(ETH_P_IP);
iptunnel_xmit(NULL, rt, skb, fl4.saddr, fl4.daddr, protocol, tos, ttl,
df, !net_eq(tunnel->net, dev_net(dev)));
--
2.10.2
Powered by blists - more mailing lists