summaryrefslogtreecommitdiff
path: root/lib/routing_nb.c
diff options
context:
space:
mode:
authorMark Stapp <mjs@cisco.com>2024-11-25 15:37:39 -0500
committerMark Stapp <mjs@cisco.com>2024-11-25 15:37:39 -0500
commit277784fe34d3036c9f6f37bc7deff7fb235012ee (patch)
treeee262bf513d225568a6dc04b729fd6ed95fa34b2 /lib/routing_nb.c
parent0bacbc6493ae0fb9b946e2df475367ea4541a5c8 (diff)
zebra: avoid a race during FPM dplane plugin shutdown
During zebra shutdown, the main pthread and the FPM pthread can deadlock if the FPM pthread is in fpm_reconnect(). Each pthread tries to use event_cancel_async() to cancel tasks that may be scheduled for the other pthread - this leads to a deadlock as neither thread can progress. This adds an atomic boolean that's managed as each pthread enters and leaves the cleanup code in question, preventing the two threads from running into the deadlock. Signed-off-by: Mark Stapp <mjs@cisco.com>
Diffstat (limited to 'lib/routing_nb.c')
0 files changed, 0 insertions, 0 deletions