X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt-events.c;h=e9e076d802238bc07e1aef14e0bb4f1e2914df6b;hb=96ba7208aa8009345a525148e32f78cd8d4693ab;hp=42d486c195d73c8cdfd265b6a54a5d2bd20950ec;hpb=c6485006a92b1b86fbb48c2b277732d3405295c9;p=lttng-modules.git diff --git a/ltt-events.c b/ltt-events.c index 42d486c1..e9e076d8 100644 --- a/ltt-events.c +++ b/ltt-events.c @@ -14,7 +14,7 @@ #include #include #include -#include +#include "wrapper/uuid.h" #include "wrapper/vmalloc.h" /* for wrapper_vmalloc_sync_all() */ #include "ltt-events.h" #include "ltt-tracer.h" @@ -34,8 +34,6 @@ int _ltt_event_metadata_statedump(struct ltt_session *session, static int _ltt_session_metadata_statedump(struct ltt_session *session); - -static void synchronize_trace(void) { synchronize_sched(); @@ -108,12 +106,9 @@ int ltt_session_enable(struct ltt_session *session) ACCESS_ONCE(session->active) = 1; ACCESS_ONCE(session->been_active) = 1; - synchronize_trace(); /* Wait for in-flight events to complete */ ret = _ltt_session_metadata_statedump(session); - if (ret) { + if (ret) ACCESS_ONCE(session->active) = 0; - synchronize_trace(); /* Wait for in-flight events to complete */ - } end: mutex_unlock(&sessions_mutex); return ret; @@ -129,7 +124,6 @@ int ltt_session_disable(struct ltt_session *session) goto end; } ACCESS_ONCE(session->active) = 0; - synchronize_trace(); /* Wait for in-flight events to complete */ end: mutex_unlock(&sessions_mutex); return ret;