EVPN MH ES reduendant VTEPs need to install
sync MAC as notify inactive and generate
ND:Proxy stamped extended community on Type-2
route.
Ticket:#
3436621
Issue:
3436621
Testing Done:
tor-11 originates type-2 MAC route:
tor-11# bridge -d fdb show | grep 00:65:00:00:00:01
00:65:00:00:00:01 dev hostbond1 vlan 1000 notify master bridge static
tor-12 receives sync MAC route:
Before fix:
----------
tor-12:/# bridge -d fdb show | grep 00:65:00:00:00:01
00:65:00:00:00:01 dev hostbond1 vlan 1000 notify master bridge static
After fix: inactive is set to MAC entry
----------
tor-12:/#bridge -d fdb show | grep 00:65:00:00:00:01
00:65:00:00:00:01 dev hostbond1 vlan 1000 notify inactive master bridge
static
Notice the difference in `inactive` post notify on tor-12
with the fix.
Signed-off-by: Trey Aspelund <taspelund@nvidia.com>
Signed-off-by: Chirag Shah <chirag@nvidia.com>
(cherry picked from commit
4a1f91a366bacc8178afcc3d2712e08a3ba3e1ba)
struct zebra_mac *mac;
bool inform_bgp = false;
bool inform_dataplane = false;
+ bool mac_inactive = false;
bool seq_change = false;
bool es_change = false;
uint32_t tmp_seq;
*/
inform_bgp = true;
inform_dataplane = true;
+ mac_inactive = true;
/* create the MAC and associate it with the dest ES */
mac = zebra_evpn_mac_add(zevpn, macaddr);
if (es_change) {
inform_bgp = true;
inform_dataplane = true;
+ mac_inactive = true;
}
/* if peer-flag is being set notify dataplane that the
* the activity as we are yet to establish activity
* locally
*/
- zebra_evpn_sync_mac_dp_install(mac, false /* set_inactive */,
- false /* force_clear_static */,
- __func__);
+ zebra_evpn_sync_mac_dp_install(
+ mac, mac_inactive /* set_inactive */,
+ false /* force_clear_static */, __func__);
}
return mac;