struct lttng_pipe *ust32_channel_monitor_pipe = NULL,
*ust64_channel_monitor_pipe = NULL,
*kernel_channel_monitor_pipe = NULL;
struct lttng_pipe *ust32_channel_monitor_pipe = NULL,
*ust64_channel_monitor_pipe = NULL,
*kernel_channel_monitor_pipe = NULL;
- bool notification_thread_running = false;
- bool rotation_thread_running = false;
- bool timer_thread_running = false;
+ bool notification_thread_launched = false;
+ bool rotation_thread_launched = false;
+ bool timer_thread_launched = false;
struct lttng_pipe *ust32_channel_rotate_pipe = NULL,
*ust64_channel_rotate_pipe = NULL,
*kernel_channel_rotate_pipe = NULL;
struct lttng_pipe *ust32_channel_rotate_pipe = NULL,
*ust64_channel_rotate_pipe = NULL,
*kernel_channel_rotate_pipe = NULL;
/* Create timer thread. */
ret = pthread_create(&timer_thread, default_pthread_attr(),
/* Create timer thread. */
ret = pthread_create(&timer_thread, default_pthread_attr(),
/* rotation_thread_data acquires the pipes' read side. */
rotation_thread_handle = rotation_thread_handle_create(
/* rotation_thread_data acquires the pipes' read side. */
rotation_thread_handle = rotation_thread_handle_create(
/* Create thread to manage the client socket */
ret = pthread_create(&client_thread, default_pthread_attr(),
/* Create thread to manage the client socket */
ret = pthread_create(&client_thread, default_pthread_attr(),
* of the active session and channels at the moment of the teardown.
*/
if (notification_thread_handle) {
* of the active session and channels at the moment of the teardown.
*/
if (notification_thread_handle) {
notification_thread_command_quit(
notification_thread_handle);
ret = pthread_join(notification_thread, &status);
notification_thread_command_quit(
notification_thread_handle);
ret = pthread_join(notification_thread, &status);
kill(getpid(), LTTNG_SESSIOND_SIG_EXIT);
ret = pthread_join(timer_thread, &status);
if (ret) {
kill(getpid(), LTTNG_SESSIOND_SIG_EXIT);
ret = pthread_join(timer_thread, &status);
if (ret) {