mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-16 04:50:29 +00:00
Merge pull request #4004 from chiragshah6/evpn_dev2
zebra: evpn mac ip dup detect (DAD) timers cleanup
This commit is contained in:
commit
baae20ccc7
@ -2191,6 +2191,7 @@ static zebra_neigh_t *zvni_neigh_add(zebra_vni_t *zvni, struct ipaddr *ip,
|
||||
memcpy(&n->emac, mac, ETH_ALEN);
|
||||
n->state = ZEBRA_NEIGH_INACTIVE;
|
||||
n->zvni = zvni;
|
||||
n->dad_ip_auto_recovery_timer = NULL;
|
||||
|
||||
/* Associate the neigh to mac */
|
||||
zmac = zvni_mac_lookup(zvni, mac);
|
||||
@ -2212,6 +2213,9 @@ static int zvni_neigh_del(zebra_vni_t *zvni, zebra_neigh_t *n)
|
||||
if (zmac)
|
||||
listnode_delete(zmac->neigh_list, n);
|
||||
|
||||
/* Cancel auto recovery */
|
||||
THREAD_OFF(n->dad_ip_auto_recovery_timer);
|
||||
|
||||
/* Free the VNI hash entry and allocated memory. */
|
||||
tmp_n = hash_release(zvni->neigh_table, n);
|
||||
XFREE(MTYPE_NEIGH, tmp_n);
|
||||
@ -3308,6 +3312,9 @@ static zebra_mac_t *zvni_mac_add(zebra_vni_t *zvni, struct ethaddr *macaddr)
|
||||
mac = hash_get(zvni->mac_table, &tmp_mac, zvni_mac_alloc);
|
||||
assert(mac);
|
||||
|
||||
mac->zvni = zvni;
|
||||
mac->dad_mac_auto_recovery_timer = NULL;
|
||||
|
||||
mac->neigh_list = list_new();
|
||||
mac->neigh_list->cmp = neigh_list_cmp;
|
||||
|
||||
@ -3321,6 +3328,9 @@ static int zvni_mac_del(zebra_vni_t *zvni, zebra_mac_t *mac)
|
||||
{
|
||||
zebra_mac_t *tmp_mac;
|
||||
|
||||
/* Cancel auto recovery */
|
||||
THREAD_OFF(mac->dad_mac_auto_recovery_timer);
|
||||
|
||||
list_delete(&mac->neigh_list);
|
||||
|
||||
/* Free the VNI hash entry and allocated memory. */
|
||||
|
Loading…
Reference in New Issue
Block a user