linux-cp: Cleanup any existing pairs when an interface is deleted

Type: fix

This only happens when the user deletes the physical before they delete the pair, that's not supoosed to be the case, but don't crash if it is.

Signed-off-by: Neale Ranns <neale@graphiant.com>
Change-Id: I8c2317b360d897775dde23833d04430f88531cbd
This commit is contained in:
Neale Ranns
2021-10-04 15:28:47 +00:00
committed by Matthew Smith
parent bed9b7269a
commit 0d7fd782e0

View File

@@ -510,6 +510,23 @@ lcp_itf_pair_delete (u32 phy_sw_if_index)
return 0;
}
/**
* lcp_itf_interface_add_del
*
* Registered to receive interface Add and delete notifications
*/
static clib_error_t *
lcp_itf_interface_add_del (vnet_main_t *vnm, u32 sw_if_index, u32 is_add)
{
if (!is_add)
/* remove any interface pair we have for this interface */
lcp_itf_pair_delete (sw_if_index);
return (NULL);
}
VNET_SW_INTERFACE_ADD_DEL_FUNCTION (lcp_itf_interface_add_del);
void
lcp_itf_pair_walk (lcp_itf_pair_walk_cb_t cb, void *ctx)
{