On Wed, Jul 07, 2021 at 07:50:38PM -0600, David Ahern wrote: > On 7/6/21 1:02 PM, Guillaume Nault wrote: > > --- a/drivers/net/vxlan.c > > +++ b/drivers/net/vxlan.c > > @@ -3767,8 +3767,7 @@ static int vxlan_config_validate(struct net *src_net, struct vxlan_config *conf, > > (conf->flags & (VXLAN_F_RCV_FLAGS | VXLAN_F_IPV6))) > > continue; > > > > - if ((conf->flags & VXLAN_F_IPV6_LINKLOCAL) && > > - tmp->cfg.remote_ifindex != conf->remote_ifindex) > > + if (tmp->cfg.remote_ifindex != conf->remote_ifindex) > > continue; > > > > NL_SET_ERR_MSG(extack, > > Looking at the vxlan driver and that restriction is unnecessary. While > IPv6 LLA requires a device index, allowing separate LINK attributes is a > legit use case - as VRF shows. I believe there's more to do than just my quick hack patch. At least vxlan_vs_find_vni() probably needs to be modified too. At which point VXLAN_F_IPV6_LINKLOCAL would become essentially unused and should be removed. > Do you want to send a formal patch to fix this one since you have it > diagnosed? I'll work on that after net-next reopens. I might try to make bareudp compatible with VRF too, if time allows. If I get at least VXLAN and bareudp to work in a multi-VRF setup, then I'll rebase the selftests on the VRF infrastructure (and just remove the tests for tunnels still incompatible with this setup).