[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5dc16f03-7cd2-f797-1bda-592d5f5462b5@gmail.com>
Date: Thu, 13 Sep 2018 07:11:18 -0700
From: Eric Dumazet <eric.dumazet@...il.com>
To: Toke Høiland-Jørgensen <toke@...e.dk>,
netdev@...r.kernel.org
Cc: cake@...ts.bufferbloat.net, Eric Dumazet <edumazet@...gle.com>
Subject: Re: [PATCH net] gso_segment: Reset skb->mac_len after modifying
network header
On 09/11/2018 03:19 PM, Toke Høiland-Jørgensen wrote:
> When splitting a GSO segment that consists of encapsulated packets, the
> skb->mac_len of the segments can end up being set wrong, causing packet
> drops in particular when using act_mirred and ifb interfaces in
> combination with a qdisc that splits GSO packets.
>
> This happens because at the time skb_segment() is called, network_header
> will point to the inner header, throwing off the calculation in
> skb_reset_mac_len(). The network_header is subsequently adjust by the
> outer IP gso_segment handlers, but they don't set the mac_len.
>
> Fix this by adding skb_reset_mac_len() calls to both the IPv4 and IPv6
> gso_segment handlers, after they modify the network_header.
>
> Signed-off-by: Toke Høiland-Jørgensen <toke@...e.dk>
Looks good but I would have appreciated a thanks or something
after the help I gave on this problem.
Reviewed-by: Eric Dumazet <edumazet@...gle.com>
Powered by blists - more mailing lists