Markers: sync from LTTng 0.249 marker code
[ust.git] / include / ust / marker.h
index 41ae10ab4a07301ed63fc998f8d592dffe2d61e0..e8608a96b2c700740b09378ef517c3562be1b780 100644 (file)
  */
 
 #include <stdarg.h>
+#include <stdint.h>
+#include <stddef.h>
 #include <bits/wordsize.h>
 #include <urcu/list.h>
-#include <ust/core.h>
-#include <ust/kcompat/kcompat.h>
 
 struct ust_marker;
+struct ust_marker_probe_array;
 
 /**
  * ust_marker_probe_func - Type of a marker probe function
@@ -64,11 +65,11 @@ struct ust_marker {
        char state;             /* State. */
        char ptype;             /* probe type : 0 : single, 1 : multi */
                                /* Probe wrapper */
-       u16 channel_id;         /* Numeric channel identifier, dynamic */
-       u16 event_id;           /* Numeric event identifier, dynamic */
+       uint16_t channel_id;    /* Numeric channel identifier, dynamic */
+       uint16_t event_id;      /* Numeric event identifier, dynamic */
        void (*call)(const struct ust_marker *mdata, void *call_private, ...);
        struct ust_marker_probe_closure single;
-       struct ust_marker_probe_closure *multi;
+       struct ust_marker_probe_array *multi;
        const char *tp_name;    /* Optional tracepoint name */
        void *tp_cb;            /* Optional tracepoint callback */
 };
@@ -109,7 +110,7 @@ struct ust_marker {
        do {                                                            \
                _DEFINE_UST_MARKER(channel, name, NULL, NULL, format);  \
                __ust_marker_check_format(format, ## args);             \
-               if (unlikely(__ust_marker_def_##name.state))            \
+               if (__builtin_expect(!!(__ust_marker_def_##name.state), 0)) \
                        (__ust_marker_def_##name.call)                  \
                                (&__ust_marker_def_##name, call_private,\
                                ## args);                               \
@@ -138,7 +139,8 @@ void __trace_mark_is_deprecated()
 
 /* To be used for string format validity checking with gcc */
 static inline
-void __printf(1, 2) ___ust_marker_check_format(const char *fmt, ...)
+void __attribute__((format(printf, 1, 2)))
+ ___ust_marker_check_format(const char *fmt, ...)
 {
 }
 
This page took 0.023039 seconds and 4 git commands to generate.