Hi Guys,
 I am looking at the given below function zebra_evpn_mac_is_static in zebra/zebra_evpn_mac.h file.

/* if the mac has been added of a mac-route from the peer
 * or if it is being referenced by a neigh added by the
 * peer we cannot let it age out i.e. we set the static bit
 * in the dataplane
 */
static inline bool zebra_evpn_mac_is_static(struct zebra_mac *mac)
{
  return ((mac->flags & ZEBRA_MAC_ALL_PEER_FLAGS) || mac->sync_neigh_cnt);
}


Is the use of ZEBRA_MAC_ALL_PEER_FLAGS correct here ?

The current code is leading to creation of static mac on mac originating peer also since it will have the ZEBRA_MAC_ES_PEER_PROXY flag set.

With this logic, mac is installed as static on all peers members of MH LAG.
How will the mac then age out ?



Rgds
Atul