X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=ltt-sessiond%2Fsession.c;h=9fef73cf7ecdce33e10a7599b2a580742ecc3257;hp=9e93d89cef07814fffa795fdfac74ad59f2ed63d;hb=20fe210416ef1cc0e9b85e5a40c58344e3185fd6;hpb=91d76f53238ce994e91e1213e46c138b1b5529c6 diff --git a/ltt-sessiond/session.c b/ltt-sessiond/session.c index 9e93d89ce..9fef73cf7 100644 --- a/ltt-sessiond/session.c +++ b/ltt-sessiond/session.c @@ -17,12 +17,10 @@ */ #define _GNU_SOURCE -#include #include #include #include #include -#include #include "lttngerr.h" #include "session.h" @@ -115,7 +113,7 @@ struct ltt_session *find_session_by_name(char *name) struct ltt_session *iter; cds_list_for_each_entry(iter, <t_session_list.head, list) { - if (strncmp(iter->name, name, strlen(iter->name)) == 0) { + if (strncmp(iter->name, name, strlen(name)) == 0) { found = 1; break; } @@ -144,6 +142,7 @@ int destroy_session(uuid_t *uuid) cds_list_for_each_entry(iter, <t_session_list.head, list) { if (uuid_compare(iter->uuid, *uuid) == 0) { + DBG("Destroying session %s", iter->name); del_session_list(iter); free(iter); found = 1; @@ -164,6 +163,8 @@ int create_session(char *name, uuid_t *session_id) { struct ltt_session *new_session; + DBG("Creating session %s", name); + new_session = find_session_by_name(name); if (new_session != NULL) { goto error; @@ -195,11 +196,13 @@ int create_session(char *name, uuid_t *session_id) * NO consumer attach to that session yet. */ new_session->ust_consumer = 0; - new_session->lttng_consumer = 0; + new_session->kernel_consumer = 0; /* Init list */ CDS_INIT_LIST_HEAD(&new_session->ust_traces); - CDS_INIT_LIST_HEAD(&new_session->lttng_traces); + + /* Set trace list counter */ + new_session->ust_trace_count = 0; /* Add new session to the global session list */ add_session_list(new_session); @@ -219,21 +222,23 @@ error_mem: * Iterate over the global session list and * fill the lttng_session array. */ -void get_lttng_session(struct lttng_session *lt) +void get_lttng_session(struct lttng_session *sessions) { int i = 0; struct ltt_session *iter; struct lttng_session lsess; + DBG("Getting all available session"); + /* Iterate over session list and append data after * the control struct in the buffer. */ cds_list_for_each_entry(iter, <t_session_list.head, list) { /* Copy name and uuid */ - uuid_unparse(iter->uuid, lsess.uuid); + uuid_copy(lsess.uuid, iter->uuid); strncpy(lsess.name, iter->name, sizeof(lsess.name)); lsess.name[sizeof(lsess.name) - 1] = '\0'; - memcpy(<[i], &lsess, sizeof(lsess)); + memcpy(&sessions[i], &lsess, sizeof(lsess)); i++; /* Reset struct for next pass */ memset(&lsess, 0, sizeof(lsess));