X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fsession.c;h=39c5611d77777d475be4a6b9d838c4fb815d7fca;hp=e57463d3e58777eb78612c78c4c77da4296d73dc;hb=259c267446a63c501298f39a5d2397314b11f729;hpb=9c6518bcd2b538c09de5e1d1df303b97ec203cc6 diff --git a/src/bin/lttng-sessiond/session.c b/src/bin/lttng-sessiond/session.c index e57463d3e..39c5611d7 100644 --- a/src/bin/lttng-sessiond/session.c +++ b/src/bin/lttng-sessiond/session.c @@ -166,7 +166,7 @@ end: * * The session list lock must be held. */ -void ltt_sessions_ht_destroy(void) +static void ltt_sessions_ht_destroy(void) { if (!ltt_sessions_ht_by_id) { return; @@ -298,17 +298,21 @@ struct ltt_session *session_find_by_id(uint64_t id) struct lttng_ht_iter iter; struct ltt_session *ls; + if (!ltt_sessions_ht_by_id) { + goto end; + } + lttng_ht_lookup(ltt_sessions_ht_by_id, &id, &iter); node = lttng_ht_iter_get_node_u64(&iter); if (node == NULL) { - goto error; + goto end; } ls = caa_container_of(node, struct ltt_session, node); DBG3("Session %" PRIu64 " found by id.", id); return ls; -error: +end: DBG3("Session %" PRIu64 " NOT found by id", id); return NULL; } @@ -324,7 +328,7 @@ int session_destroy(struct ltt_session *session) /* Safety check */ assert(session); - DBG("Destroying session %s", session->name); + DBG("Destroying session %s (id %" PRIu64 ")", session->name, session->id); del_session_list(session); pthread_mutex_destroy(&session->lock); del_session_ht(session); @@ -396,6 +400,11 @@ int session_create(char *name, uid_t uid, gid_t gid) goto error; } + new_session->rotate_pending = false; + new_session->rotate_pending_relay = false; + new_session->rotate_relay_pending_timer_enabled = false; + new_session->rotate_timer = false; + /* Add new session to the session list */ session_lock_list(); new_session->id = add_session_list(new_session);