On Tue, Mar 9, 2021 at 6:32 AM Balazs Nemeth <bnem...@redhat.com> wrote: > > A packet with skb_inner_network_header(skb) == skb_network_header(skb) > and ETH_P_MPLS_UC will prevent mpls_gso_segment from pulling any headers > from the packet. Subsequently, the call to skb_mac_gso_segment will > again call mpls_gso_segment with the same packet leading to an infinite > loop. In addition, ensure that the header length is a multiple of four, > which should hold irrespective of the number of stacked labels. > > Signed-off-by: Balazs Nemeth <bnem...@redhat.com>
Acked-by: Willem de Bruijn <will...@google.com> The compiler will convert that modulo into a cheap & (ETH_HLEN - 1) test for this constant.