mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-05-28 19:43:29 +00:00
zebra: ignore sync updates from bgp if the dest ES is not ready
In the window immediately after an ES deletion bgpd can send MAC-IP updates using that ES. Zebra needs to ignore these updates to prevent creation of stale entries. Ticket: #2668488 Signed-off-by: Anuradha Karuppiah <anuradhak@nvidia.com>
This commit is contained in:
parent
6e59c4a71d
commit
38f681e1ca
@ -1423,8 +1423,24 @@ void zebra_evpn_rem_macip_add(vni_t vni, const struct ethaddr *macaddr,
|
||||
* REMOTE - if ES is not local
|
||||
*/
|
||||
if (flags & ZEBRA_MACIP_TYPE_SYNC_PATH) {
|
||||
zebra_evpn_process_sync_macip_add(zevpn, macaddr, ipa_len,
|
||||
ipaddr, flags, seq, esi);
|
||||
struct zebra_evpn_es *es;
|
||||
|
||||
es = zebra_evpn_es_find(esi);
|
||||
if (es && (es->flags & ZEBRA_EVPNES_READY_FOR_BGP)) {
|
||||
zebra_evpn_process_sync_macip_add(zevpn, macaddr,
|
||||
ipa_len, ipaddr,
|
||||
flags, seq, esi);
|
||||
} else {
|
||||
if (IS_ZEBRA_DEBUG_EVPN_MH_ES) {
|
||||
char esi_str[ESI_STR_LEN];
|
||||
|
||||
esi_to_str(esi, esi_str, sizeof(esi_str));
|
||||
zlog_debug(
|
||||
"Ignore sync-macip add; ES %s is not ready",
|
||||
esi_str);
|
||||
}
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user