]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commitdiff
UBUNTU: SAUCE: Revert "vti6: fix PMTU caching and reporting on xmit"
authorSeth Forshee <seth.forshee@canonical.com>
Tue, 28 Aug 2018 15:57:44 +0000 (10:57 -0500)
committerAndrea Righi <andrea.righi@canonical.com>
Mon, 25 Nov 2019 13:56:34 +0000 (14:56 +0100)
BugLink: https://bugs.launchpad.net/bugs/1789436
The net/pmtu.sh self test is hanging due to a dangling reference
to a veth device which prevents module unload. We haven't yet
determined the root cause, but given that the problem being fixed
was introduced in 4.1 it should be safe to revert the change as a
temporary measure. So temporarily revert commit
d6990976af7c5d8f55903bfb4289b6fb030bf754 until we have a better
fix.

Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
net/ipv6/ip6_vti.c

index 024db17386d2ff8043269bd6f7a46f4535fba67f..4aa31ccd8a3356eccc83ae4720267b8fd26f2946 100644 (file)
@@ -477,6 +477,10 @@ vti6_xmit(struct sk_buff *skb, struct net_device *dev, struct flowi *fl)
                goto tx_err_dst_release;
        }
 
+       skb_scrub_packet(skb, !net_eq(t->net, dev_net(dev)));
+       skb_dst_set(skb, dst);
+       skb->dev = skb_dst(skb)->dev;
+
        mtu = dst_mtu(dst);
        if (skb->len > mtu) {
                skb_dst_update_pmtu(skb, mtu);
@@ -491,14 +495,9 @@ vti6_xmit(struct sk_buff *skb, struct net_device *dev, struct flowi *fl)
                                  htonl(mtu));
                }
 
-               err = -EMSGSIZE;
-               goto tx_err_dst_release;
+               return -EMSGSIZE;
        }
 
-       skb_scrub_packet(skb, !net_eq(t->net, dev_net(dev)));
-       skb_dst_set(skb, dst);
-       skb->dev = skb_dst(skb)->dev;
-
        err = dst_output(t->net, skb->sk, skb);
        if (net_xmit_eval(err) == 0)
                err = pkt_len;