On Wed, Jul 15, 2015 at 02:25:59PM +0200, Wolfgang Walter wrote: > > Yes. Switching TSO off and leaving GRO on works, too.
OK, could you please try this patch? ---8<--- We need to set the SKB_GSO_SIT bit if we detect a 6-in-4 tunnel when doing GRO. Otherwise we may throw a packet at TSO hardware that doesn't know what to do with it. Fixes: 19424e052fb4 ("sit: Add gro callbacks to sit_offload") Reported-by: Wolfgang Walter <li...@stwm.de> Signed-off-by: Herbert Xu <herb...@gondor.apana.org.au> diff --git a/net/ipv6/ip6_offload.c b/net/ipv6/ip6_offload.c index e893cd1..1252eac 100644 --- a/net/ipv6/ip6_offload.c +++ b/net/ipv6/ip6_offload.c @@ -289,11 +289,21 @@ static struct packet_offload ipv6_packet_offload __read_mostly = { }, }; +static int sit_gro_complete(struct sk_buff *skb, int nhoff) +{ + int err = ipv6_gro_complete(skb, nhoff); + + skb->encapsulation = 1; + skb_shinfo(skb)->gso_type |= SKB_GSO_SIT; + + return err; +} + static const struct net_offload sit_offload = { .callbacks = { .gso_segment = ipv6_gso_segment, .gro_receive = ipv6_gro_receive, - .gro_complete = ipv6_gro_complete, + .gro_complete = sit_gro_complete, }, }; -- Email: Herbert Xu <herb...@gondor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html