|
@@ -1406,9 +1406,13 @@ static void geneve_link_config(struct net_device *dev,
|
|
|
}
|
|
}
|
|
|
#if IS_ENABLED(CONFIG_IPV6)
|
|
#if IS_ENABLED(CONFIG_IPV6)
|
|
|
case AF_INET6: {
|
|
case AF_INET6: {
|
|
|
- struct rt6_info *rt = rt6_lookup(geneve->net,
|
|
|
|
|
- &info->key.u.ipv6.dst, NULL, 0,
|
|
|
|
|
- NULL, 0);
|
|
|
|
|
|
|
+ struct rt6_info *rt;
|
|
|
|
|
+
|
|
|
|
|
+ if (!__in6_dev_get(dev))
|
|
|
|
|
+ break;
|
|
|
|
|
+
|
|
|
|
|
+ rt = rt6_lookup(geneve->net, &info->key.u.ipv6.dst, NULL, 0,
|
|
|
|
|
+ NULL, 0);
|
|
|
|
|
|
|
|
if (rt && rt->dst.dev)
|
|
if (rt && rt->dst.dev)
|
|
|
ldev_mtu = rt->dst.dev->mtu - GENEVE_IPV6_HLEN;
|
|
ldev_mtu = rt->dst.dev->mtu - GENEVE_IPV6_HLEN;
|