Teardown the notification thread after the sessiond clean-up
authorJérémie Galarneau <jeremie.galarneau@efficios.com>
Wed, 5 Dec 2018 20:00:09 +0000 (15:00 -0500)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Thu, 6 Dec 2018 21:34:34 +0000 (16:34 -0500)
commit4a91420cefb94afc4a20042bdbe2564086dad3cb
treec5061ecd3990a3c75057e91ec440443a0827e2fa
parent4ec029ed8d032ac98d8dc158a751841b7c150639
Teardown the notification thread after the sessiond clean-up

The notification thread may receive commands issued through the
call_rcu thread during the destruction of some of the sessiond's
data structure.

This change tears down the notification thread after the clean-up
has occured and the issuance of an RCU barrier. This ensures that
all previously-queued call_rcu work has been performed and that
any ensuing notification thread commands have been queued in return.

It is safe, at that point, to queue a "quit" command in the
notification thread's command queue. The notification thread's
shutdown method will issue the command and wait for its completion
before returning.

Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
src/bin/lttng-sessiond/main.c
src/bin/lttng-sessiond/notification-thread.c
src/bin/lttng-sessiond/notification-thread.h
This page took 0.035678 seconds and 5 git commands to generate.