From 48d331e7ddfbb2a4fc150497ae3b89b1279a14af Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Fri, 11 May 2018 18:39:09 -0400 Subject: [PATCH] pimd: Clean up rpf_hash *after* upstream cleanup Cleanup the pim->rpf_hash after upstream cleanup is done since upstream cleanup uses the rpf_hash to cleanup itself. Signed-off-by: Donald Sharp --- pimd/pim_instance.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pimd/pim_instance.c b/pimd/pim_instance.c index ab4ffc26ae..7e5bb34e31 100644 --- a/pimd/pim_instance.c +++ b/pimd/pim_instance.c @@ -35,13 +35,6 @@ static void pim_instance_terminate(struct pim_instance *pim) { - /* Traverse and cleanup rpf_hash */ - if (pim->rpf_hash) { - hash_clean(pim->rpf_hash, (void *)pim_rp_list_hash_clean); - hash_free(pim->rpf_hash); - pim->rpf_hash = NULL; - } - if (pim->ssm_info) { pim_ssm_terminate(pim->ssm_info); pim->ssm_info = NULL; @@ -54,6 +47,13 @@ static void pim_instance_terminate(struct pim_instance *pim) pim_upstream_terminate(pim); + /* Traverse and cleanup rpf_hash */ + if (pim->rpf_hash) { + hash_clean(pim->rpf_hash, (void *)pim_rp_list_hash_clean); + hash_free(pim->rpf_hash); + pim->rpf_hash = NULL; + } + pim_oil_terminate(pim); pim_if_terminate(pim); -- 2.39.5