X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=net%2Fipv6%2Froute.c;fp=net%2Fipv6%2Froute.c;h=1f79910fef5509b486bdf7302b3c638f3f490455;hb=f34ff9e87b0564bd2ac1f3611d40313e80d20224;hp=0a7403b9d572e61cc89d98a64f95d1f655243750;hpb=564ce1b4843605e7dd55fbb6671dc9f47ca72a2b;p=sagit-ice-cold%2Fkernel_xiaomi_msm8998.git diff --git a/net/ipv6/route.c b/net/ipv6/route.c index 0a7403b9d572..1f79910fef55 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c @@ -1417,8 +1417,12 @@ EXPORT_SYMBOL_GPL(ip6_update_pmtu); void ip6_sk_update_pmtu(struct sk_buff *skb, struct sock *sk, __be32 mtu) { - ip6_update_pmtu(skb, sock_net(sk), mtu, - sk->sk_bound_dev_if, sk->sk_mark, sk->sk_uid); + int oif = sk->sk_bound_dev_if; + + if (!oif && skb->dev) + oif = l3mdev_master_ifindex(skb->dev); + + ip6_update_pmtu(skb, sock_net(sk), mtu, oif, sk->sk_mark, sk->sk_uid); } EXPORT_SYMBOL_GPL(ip6_sk_update_pmtu);