DBG("Channel fd %d added to kernel set", channel->fd);
}
session_unlock(session);
+ session_put(session);
}
session_unlock_list();
struct thread_notifiers *notifiers = NULL;
struct lttng_thread *thread;
- quit_pipe = lttng_pipe_open(FD_CLOEXEC);
- if (!quit_pipe) {
- goto error;
- }
-
notifiers = zmalloc(sizeof(*notifiers));
if (!notifiers) {
+ goto error_alloc;
+ }
+ quit_pipe = lttng_pipe_open(FD_CLOEXEC);
+ if (!quit_pipe) {
goto error;
}
notifiers->quit_pipe = quit_pipe;
return true;
error:
cleanup_kernel_management_thread(notifiers);
+error_alloc:
return false;
}