On 28 Oct 2020, at 01:53 UTC Willem de Bruijn <willemdebruijn.ker...@gmail.com> 
wrote:
> On Tue, Oct 27, 2020 at 5:52 PM Alexander Ovechkin <o...@yandex-team.ru> 
> wrote:
> >
> > > But it was moved on purpose to avoid setting the inner protocol to 
> > > IPPROTO_MPLS. That needs to use skb->inner_protocol to further segment.
> > And why do we need to avoid setting the inner protocol to IPPROTO_MPLS? 
> > Currently skb->inner_protocol is used before call of ip6_tnl_xmit.
> > Can you please give example when this patch breaks MPLS segmentation?
> 
> mpls_gso_segment calls skb_mac_gso_segment on the inner packet. After
> setting skb->protocol based on skb->inner_protocol.

Yeah, but mpls_gso_segment is called before ip6_tnl_xmit (because tun devices 
don't have NETIF_F_GSO_SOFTWARE in their mpls_features), so it does not matter 
to what value ip6_tnl_xmit sets skb->inner_ipproto.
And even if gso would been called after both mpls_xmit and ip6_tnl_xmit it 
would fail as you have written.

Reply via email to