From: Stanislav Zaikin Date: Fri, 4 Oct 2024 15:43:37 +0000 (+0200) Subject: linux-cp: do ip6-ll cleanup on interface removal X-Git-Tag: v25.10-rc0~48 X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=f20e84d52cf335e93075a5152b6bf27da1ca4ff9;p=vpp.git linux-cp: do ip6-ll cleanup on interface removal run a cleanup of ip6 mfib w/o depending on receiving a corresponding netlink message Type: fix Change-Id: I98d5dbbbbb7a56d3ee6f5882b5d6465148049309 Signed-off-by: Stanislav Zaikin --- diff --git a/src/plugins/linux-cp/lcp_router.c b/src/plugins/linux-cp/lcp_router.c index 0efd53e64ef..27f53357a4d 100644 --- a/src/plugins/linux-cp/lcp_router.c +++ b/src/plugins/linux-cp/lcp_router.c @@ -17,7 +17,6 @@ #include #include -//#include #include #include #include @@ -1543,6 +1542,12 @@ const nl_vft_t lcp_router_vft = { .cb = lcp_router_route_sync_end }, }; +static void +lcp_lcp_router_interface_del_cb (lcp_itf_pair_t *lip) +{ + lcp_router_ip6_mroutes_add_del (lip->lip_phy_sw_if_index, 0); +} + static clib_error_t * lcp_router_init (vlib_main_t *vm) { @@ -1550,6 +1555,12 @@ lcp_router_init (vlib_main_t *vm) nl_register_vft (&lcp_router_vft); + lcp_itf_pair_vft_t lcp_router_interface_del_vft = { + .pair_del_fn = lcp_lcp_router_interface_del_cb, + }; + + lcp_itf_pair_register_vft (&lcp_router_interface_del_vft); + /* * allocate 2 route sources. The low priority source will be for * dynamic routes. If a dynamic route daemon (FRR) tries to remove its