summaryrefslogtreecommitdiff
path: root/pimd/pim_instance.c
diff options
context:
space:
mode:
authorAnuradha Karuppiah <anuradhak@cumulusnetworks.com>2019-04-16 18:49:28 -0700
committerAnuradha Karuppiah <anuradhak@cumulusnetworks.com>2019-04-21 07:24:20 -0700
commitb21e0c937528765db57e6d9b10bf6429fa5787e3 (patch)
tree4e9fe6e1a37a9cf0a7d6791dedc35ebaf6244bd9 /pimd/pim_instance.c
parent745fc7a5ec9f244a6191c2205eea750ea21d462c (diff)
pim: fix order of vxlan mroutes cleanup when pimd is shutdown
1. vxlan instance cleanup needs to be done before the upstream entries are force-flushed. 2. also vxlan callbacks need to be ignored post instance-cleanup. Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
Diffstat (limited to 'pimd/pim_instance.c')
-rw-r--r--pimd/pim_instance.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/pimd/pim_instance.c b/pimd/pim_instance.c
index 1416d8de55..a2bf3d2783 100644
--- a/pimd/pim_instance.c
+++ b/pimd/pim_instance.c
@@ -36,6 +36,8 @@
static void pim_instance_terminate(struct pim_instance *pim)
{
+ pim_vxlan_exit(pim);
+
if (pim->ssm_info) {
pim_ssm_terminate(pim->ssm_info);
pim->ssm_info = NULL;
@@ -60,7 +62,6 @@ static void pim_instance_terminate(struct pim_instance *pim)
pim_oil_terminate(pim);
pim_msdp_exit(pim);
- pim_vxlan_exit(pim);
XFREE(MTYPE_PIM_PIM_INSTANCE, pim);
}