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>
Mon, 10 Dec 2018 20:24:50 +0000 (15:24 -0500)
commit4de276989fa969565218121e95485796091f7cd4
tree6a045f0ffc3d05ad405f0c63e3cecbe878caf496
parent8c50a3daa881be0669b25921355f6f28446e0ff2
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.026635 seconds and 4 git commands to generate.