X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=lttng-events.c;h=a062044698b95e218f2fcb05b41cec8170e33cd6;hb=c6c9e10f104b1ff039c3f76c5accdc12513c760d;hp=674494bd6b0c30998ed3ada2083ccd765f7fafc7;hpb=7c27cb174f9668ff6006d1ed788006f3c54a368c;p=lttng-modules.git diff --git a/lttng-events.c b/lttng-events.c index 674494bd..a0620446 100644 --- a/lttng-events.c +++ b/lttng-events.c @@ -14,6 +14,7 @@ #include #include #include +#include #include "wrapper/uuid.h" #include "wrapper/vmalloc.h" /* for wrapper_vmalloc_sync_all() */ #include "wrapper/random.h" @@ -112,6 +113,11 @@ int lttng_session_enable(struct lttng_session *session) ACCESS_ONCE(session->active) = 1; ACCESS_ONCE(session->been_active) = 1; ret = _lttng_session_metadata_statedump(session); + if (ret) { + ACCESS_ONCE(session->active) = 0; + goto end; + } + ret = lttng_statedump_start(session); if (ret) ACCESS_ONCE(session->active) = 0; end: @@ -926,8 +932,8 @@ int _lttng_session_metadata_statedump(struct lttng_session *session) lttng_alignof(uint16_t) * CHAR_BIT, lttng_alignof(uint32_t) * CHAR_BIT, lttng_alignof(uint64_t) * CHAR_BIT, - CTF_VERSION_MAJOR, - CTF_VERSION_MINOR, + CTF_SPEC_MAJOR, + CTF_SPEC_MINOR, uuid_s, #ifdef __BIG_ENDIAN "be" @@ -938,6 +944,27 @@ int _lttng_session_metadata_statedump(struct lttng_session *session) if (ret) goto end; + ret = lttng_metadata_printf(session, + "env {\n" + " domain = \"kernel\";\n" + " sysname = \"%s\";\n" + " kernel_release = \"%s\";\n" + " kernel_version = \"%s\";\n" + " tracer_name = \"lttng-modules\";\n" + " tracer_major = %d;\n" + " tracer_minor = %d;\n" + " tracer_patchlevel = %d;\n" + "};\n\n", + utsname()->sysname, + utsname()->release, + utsname()->version, + LTTNG_MODULES_MAJOR_VERSION, + LTTNG_MODULES_MINOR_VERSION, + LTTNG_MODULES_PATCHLEVEL_VERSION + ); + if (ret) + goto end; + ret = lttng_metadata_printf(session, "clock {\n" " name = %s;\n",