]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/blobdiff - net/core/lwt_bpf.c
net: fix GSO in bpf_lwt_push_ip_encap
[mirror_ubuntu-eoan-kernel.git] / net / core / lwt_bpf.c
index cf2f8897ca1945ad162f4c783e74c2698c5b8cc3..126d31ff5ee343e3248e1bdc9ba238f46a2a69c4 100644 (file)
@@ -625,6 +625,8 @@ int bpf_lwt_push_ip_encap(struct sk_buff *skb, void *hdr, u32 len, bool ingress)
 
        /* push the encap headers and fix pointers */
        skb_reset_inner_headers(skb);
+       skb_reset_inner_mac_header(skb);  /* mac header is not yet set */
+       skb_set_inner_protocol(skb, skb->protocol);
        skb->encapsulation = 1;
        skb_push(skb, len);
        if (ingress)