mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-07-24 06:28:34 +00:00
zebra: Prevent crash because nl is NULL on shutdown
When shutting down the main pthread was first closing
the sockets associated with the dplane pthread and
then telling it to shutdown the pthread at a later point
in time. This caused the dplane to crash because the nl
data has been freed already. Change the shutdown order
to stop the dplane pthread *and* then close the sockets.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
(cherry picked from commit 977d7e24ff
)
This commit is contained in:
parent
2681de7b19
commit
fecd91afbe
11
zebra/main.c
11
zebra/main.c
@ -206,12 +206,17 @@ void zebra_finalize(struct event *dummy)
|
||||
|
||||
vrf_terminate();
|
||||
|
||||
/*
|
||||
* Stop dplane thread and finish any cleanup
|
||||
* This is before the zebra_ns_early_shutdown call
|
||||
* because sockets that the dplane depends on are closed
|
||||
* in those functions
|
||||
*/
|
||||
zebra_dplane_shutdown();
|
||||
|
||||
ns_walk_func(zebra_ns_early_shutdown, NULL, NULL);
|
||||
zebra_ns_notify_close();
|
||||
|
||||
/* Stop dplane thread and finish any cleanup */
|
||||
zebra_dplane_shutdown();
|
||||
|
||||
/* Final shutdown of ns resources */
|
||||
ns_walk_func(zebra_ns_final_shutdown, NULL, NULL);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user