tracepoint event instrumentation: use system headers
[deliverable/lttng-modules.git] / instrumentation / events / lttng-module / printk.h
index fd7cccc3769a9627092e536eede966600be7e1d3..077fc45c0d614ba2f7ba70f8d0d40c8a4bebe01a 100644 (file)
@@ -4,7 +4,7 @@
 #if !defined(LTTNG_TRACE_PRINTK_H) || defined(TRACE_HEADER_MULTI_READ)
 #define LTTNG_TRACE_PRINTK_H
 
-#include "../../../probes/lttng-tracepoint-event.h"
+#include <probes/lttng-tracepoint-event.h>
 #include <linux/version.h>
 
 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0))
@@ -17,20 +17,14 @@ LTTNG_TRACEPOINT_EVENT_MAP(console,
 
        TP_ARGS(text, len),
 
-       TP_STRUCT__entry(
-               __dynamic_array_text(char, msg, len)
-       ),
-
-       TP_fast_assign(
-               tp_memcpy_dyn(msg, text)
-       ),
-
-       TP_printk("%s", __get_str(msg))
+       TP_FIELDS(
+               ctf_sequence_text(char, msg, text, size_t, len)
+       )
 )
 
 #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
 
-LTTNG_TRACEPOINT_EVENT_CONDITION_MAP(console,
+LTTNG_TRACEPOINT_EVENT_MAP(console,
 
        printk_console,
 
@@ -39,22 +33,15 @@ LTTNG_TRACEPOINT_EVENT_CONDITION_MAP(console,
 
        TP_ARGS(log_buf, start, end, log_buf_len),
 
-       TP_CONDITION(start != end),
-
-       TP_STRUCT__entry(
-               __dynamic_array_text(char, msg, end - start)
-       ),
-
-       TP_fast_assign(
-               tp_memcpy_dyn(msg, log_buf + start)
-       ),
-
-       TP_printk("%s", __get_str(msg))
+       TP_FIELDS(
+               ctf_sequence_text(char, msg, log_buf + start,
+                       size_t, end - start)
+       )
 )
 
 #else /* (LINUX_VERSION_CODE < KERNEL_VERSION(3,5,0)) */
 
-LTTNG_TRACEPOINT_EVENT_CONDITION_MAP(console,
+LTTNG_TRACEPOINT_EVENT_MAP(console,
 
        printk_console,
 
@@ -63,25 +50,21 @@ LTTNG_TRACEPOINT_EVENT_CONDITION_MAP(console,
 
        TP_ARGS(log_buf, start, end, log_buf_len),
 
-       TP_CONDITION(start != end),
-
-       TP_STRUCT__entry(
-               __dynamic_array_text_2(char, msg,
-                       (start & (log_buf_len - 1)) > (end & (log_buf_len - 1))
+       TP_FIELDS(
+               /*
+                * printk buffer is gathered from two segments on older kernels.
+                */
+               ctf_sequence_text(char, msg1,
+                       log_buf + (start & (log_buf_len - 1)),
+                       size_t, (start & (log_buf_len - 1)) > (end & (log_buf_len - 1))
                                ? log_buf_len - (start & (log_buf_len - 1))
-                               : end - start,
-                       (start & (log_buf_len - 1)) > (end & (log_buf_len - 1))
+                               : end - start)
+               ctf_sequence_text(char, msg2,
+                       log_buf,
+                       size_t, (start & (log_buf_len - 1)) > (end & (log_buf_len - 1))
                                ? end & (log_buf_len - 1)
                                : 0)
-       ),
-
-       TP_fast_assign(
-               tp_memcpy_dyn_2(msg,
-                       log_buf + (start & (log_buf_len - 1)),
-                       log_buf)
-       ),
-
-       TP_printk("%s", __get_str(msg))
+       )
 )
 
 #endif
@@ -89,4 +72,4 @@ LTTNG_TRACEPOINT_EVENT_CONDITION_MAP(console,
 #endif /* LTTNG_TRACE_PRINTK_H */
 
 /* This part must be outside protection */
-#include "../../../probes/define_trace.h"
+#include <probes/define_trace.h>
This page took 0.029666 seconds and 5 git commands to generate.