X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fglobals.c;h=ef57a960dd47365b87c6f506d7f1220cb974886d;hb=a5a309207b81778262744a9de568f6d7c54996e2;hp=63fd799386581059d80f4235593f489a1f76f4fc;hpb=e32d7f274604b77bcd83c24994e88df3761ed658;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/globals.c b/src/bin/lttng-sessiond/globals.c index 63fd79938..ef57a960d 100644 --- a/src/bin/lttng-sessiond/globals.c +++ b/src/bin/lttng-sessiond/globals.c @@ -18,6 +18,9 @@ */ #include "lttng-sessiond.h" +#include + +lttng_uuid sessiond_uuid; int ust_consumerd64_fd = -1; int ust_consumerd32_fd = -1; @@ -30,12 +33,50 @@ struct notification_thread_handle *notification_thread_handle; struct lttng_ht *agent_apps_ht_by_sock = NULL; -int kernel_tracer_fd = -1; +struct lttng_kernel_tracer_version kernel_tracer_version; +struct lttng_kernel_tracer_abi_version kernel_tracer_abi_version; -int apps_cmd_notify_pipe[2] = { -1, -1 }; int kernel_poll_pipe[2] = { -1, -1 }; pid_t ppid; pid_t child_ppid; struct sessiond_config config; + +struct consumer_data kconsumer_data = { + .type = LTTNG_CONSUMER_KERNEL, + .err_sock = -1, + .cmd_sock = -1, + .channel_monitor_pipe = -1, + .pid_mutex = PTHREAD_MUTEX_INITIALIZER, + .lock = PTHREAD_MUTEX_INITIALIZER, +}; + +struct consumer_data ustconsumer64_data = { + .type = LTTNG_CONSUMER64_UST, + .err_sock = -1, + .cmd_sock = -1, + .channel_monitor_pipe = -1, + .pid_mutex = PTHREAD_MUTEX_INITIALIZER, + .lock = PTHREAD_MUTEX_INITIALIZER, +}; + +struct consumer_data ustconsumer32_data = { + .type = LTTNG_CONSUMER32_UST, + .err_sock = -1, + .cmd_sock = -1, + .channel_monitor_pipe = -1, + .pid_mutex = PTHREAD_MUTEX_INITIALIZER, + .lock = PTHREAD_MUTEX_INITIALIZER, +}; + +enum consumerd_state ust_consumerd_state; +enum consumerd_state kernel_consumerd_state; + +static void __attribute__((constructor)) init_sessiond_uuid(void) +{ + if (lttng_uuid_generate(sessiond_uuid)) { + ERR("Failed to generate a session daemon UUID"); + abort(); + } +}