diff options
author | Chirag Shah <chirag@nvidia.com> | 2024-11-19 21:24:30 +0100 |
---|---|---|
committer | Chirag Shah <chirag@nvidia.com> | 2024-11-25 18:00:03 +0100 |
commit | adae8192d184beafdf84b15b24b66c7ccd0c92e0 (patch) | |
tree | 76f0db638b297fd6c8143f2f37abfb9f73da3916 /zebra | |
parent | Merge pull request #17369 from louis-6wind/bgp_vpnv4_route_leak_basic (diff) | |
download | frr-adae8192d184beafdf84b15b24b66c7ccd0c92e0.tar.xz frr-adae8192d184beafdf84b15b24b66c7ccd0c92e0.zip |
zebra: EVPN check vxlan oper up in vlan mapping
When VLAN-VNI mapping is updated, do not set the L2VNI up event
if the associated VXLAN device is not up.
This may result in bgp synced remote routes to skip installing
in Zebra and onwards (Kernel).
Ticket: #4139506
Signed-off-by: Chirag Shah <chirag@nvidia.com>
Diffstat (limited to 'zebra')
-rw-r--r-- | zebra/zebra_vxlan_if.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/zebra/zebra_vxlan_if.c b/zebra/zebra_vxlan_if.c index 17ab05c1f..2658c9f01 100644 --- a/zebra/zebra_vxlan_if.c +++ b/zebra/zebra_vxlan_if.c @@ -1032,7 +1032,13 @@ int zebra_vxlan_if_vni_up(struct interface *ifp, struct zebra_vxlan_vni *vnip) /* If part of a bridge, inform BGP about this VNI. */ /* Also, read and populate local MACs and neighbors. */ if (zif->brslave_info.br_if) { - zebra_evpn_send_add_to_client(zevpn); + if (if_is_operative(zevpn->vxlan_if)) { + zebra_evpn_send_add_to_client(zevpn); + } else { + if (IS_ZEBRA_DEBUG_KERNEL || IS_ZEBRA_DEBUG_VXLAN) + zlog_debug("%s VNI %u vxlan_if %s oper down skipping vni up to client", + __func__, zevpn->vni, zevpn->vxlan_if->name); + } zebra_evpn_read_mac_neigh(zevpn, ifp); } } |