Version 2.5.7
[lttng-ust.git] / include / lttng / tracepoint.h
index b3b01cc9196d94e7a8c1da2c6e84a70e7952a0a6..ca68c1fa44e62b666da477ab71878ee4b77de827 100644 (file)
@@ -28,6 +28,7 @@
 #include <lttng/tracepoint-types.h>
 #include <lttng/tracepoint-rcu.h>
 #include <urcu/compiler.h>
+#include <urcu/system.h>
 #include <dlfcn.h>     /* for dlopen */
 #include <string.h>    /* for memset */
 #include <lttng/ust-config.h>  /* for sdt */
@@ -47,7 +48,7 @@ extern "C" {
 #define tracepoint(provider, name, ...)                                            \
        do {                                                                \
                STAP_PROBEV(provider, name, ## __VA_ARGS__);                \
-               if (caa_unlikely(__tracepoint_##provider##___##name.state)) \
+               if (caa_unlikely(CMM_LOAD_SHARED(__tracepoint_##provider##___##name.state))) \
                        __tracepoint_cb_##provider##___##name(__VA_ARGS__); \
        } while (0)
 
@@ -152,7 +153,7 @@ extern "C" {
  */
 #define _DECLARE_TRACEPOINT(_provider, _name, ...)                                     \
 extern struct tracepoint __tracepoint_##_provider##___##_name;                         \
-static inline __attribute__((always_inline)) lttng_ust_notrace                         \
+static inline __attribute__((always_inline, unused)) lttng_ust_notrace                 \
 void __tracepoint_cb_##_provider##___##_name(_TP_ARGS_PROTO(__VA_ARGS__));             \
 static                                                                                 \
 void __tracepoint_cb_##_provider##___##_name(_TP_ARGS_PROTO(__VA_ARGS__))              \
@@ -352,6 +353,7 @@ extern struct tracepoint * const __stop___tracepoints_ptrs[]
                        NULL,                                                   \
                        _TRACEPOINT_UNDEFINED_REF(_provider),                   \
                        _TP_EXTRACT_STRING(_args),                              \
+                       { },                                                    \
                };                                                              \
        static struct tracepoint * __tracepoint_ptr_##_provider##___##_name     \
                __attribute__((used, section("__tracepoints_ptrs"))) =          \
This page took 0.029252 seconds and 4 git commands to generate.