diff --git a/zebra/main.c b/zebra/main.c index ba43ae910b..78932bfced 100644 --- a/zebra/main.c +++ b/zebra/main.c @@ -175,11 +175,6 @@ static void sigint(void) if (zrouter.lsp_process_q) work_queue_free_and_null(&zrouter.lsp_process_q); - vrf_terminate(); - - ns_walk_func(zebra_ns_early_shutdown, NULL, NULL); - zebra_ns_notify_close(); - access_list_reset(); prefix_list_reset(); /* @@ -207,6 +202,11 @@ void zebra_finalize(struct event *dummy) { zlog_info("Zebra final shutdown"); + vrf_terminate(); + + ns_walk_func(zebra_ns_early_shutdown, NULL, NULL); + zebra_ns_notify_close(); + /* Stop dplane thread and finish any cleanup */ zebra_dplane_shutdown();