Rename LTTng instrumentation macros
[lttng-modules.git] / instrumentation / events / lttng-module / printk.h
CommitLineData
b87700e3
AG
1#undef TRACE_SYSTEM
2#define TRACE_SYSTEM printk
3
3bc29f0a
MD
4#if !defined(LTTNG_TRACE_PRINTK_H) || defined(TRACE_HEADER_MULTI_READ)
5#define LTTNG_TRACE_PRINTK_H
b87700e3 6
3bc29f0a 7#include "../../../probes/lttng-tracepoint-event.h"
b87700e3
AG
8#include <linux/version.h>
9
68ed2ee0
MD
10#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0))
11
3bc29f0a 12LTTNG_TRACEPOINT_EVENT(console,
68ed2ee0
MD
13 TP_PROTO(const char *text, size_t len),
14
15 TP_ARGS(text, len),
16
17 TP_STRUCT__entry(
18 __dynamic_array_text(char, msg, len)
19 ),
20
21 TP_fast_assign(
22 tp_memcpy_dyn(msg, text)
23 ),
24
25 TP_printk("%s", __get_str(msg))
26)
27
28#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,5,0))
b87700e3 29
3bc29f0a 30LTTNG_TRACEPOINT_EVENT_CONDITION(console,
b87700e3
AG
31 TP_PROTO(const char *log_buf, unsigned start, unsigned end,
32 unsigned log_buf_len),
33
34 TP_ARGS(log_buf, start, end, log_buf_len),
35
36 TP_CONDITION(start != end),
37
38 TP_STRUCT__entry(
68ed2ee0 39 __dynamic_array_text(char, msg, end - start)
b87700e3
AG
40 ),
41
42 TP_fast_assign(
68ed2ee0
MD
43 tp_memcpy_dyn(msg, log_buf + start)
44 ),
45
46 TP_printk("%s", __get_str(msg))
47)
48
49#else /* (LINUX_VERSION_CODE < KERNEL_VERSION(3,5,0)) */
50
3bc29f0a 51LTTNG_TRACEPOINT_EVENT_CONDITION(console,
68ed2ee0
MD
52 TP_PROTO(const char *log_buf, unsigned start, unsigned end,
53 unsigned log_buf_len),
54
55 TP_ARGS(log_buf, start, end, log_buf_len),
56
57 TP_CONDITION(start != end),
58
59 TP_STRUCT__entry(
60 __dynamic_array_text_2(char, msg,
61 (start & (log_buf_len - 1)) > (end & (log_buf_len - 1))
62 ? log_buf_len - (start & (log_buf_len - 1))
63 : end - start,
64 (start & (log_buf_len - 1)) > (end & (log_buf_len - 1))
65 ? end & (log_buf_len - 1)
66 : 0)
67 ),
68
69 TP_fast_assign(
70 tp_memcpy_dyn_2(msg,
71 log_buf + (start & (log_buf_len - 1)),
72 log_buf)
b87700e3
AG
73 ),
74
75 TP_printk("%s", __get_str(msg))
76)
68ed2ee0
MD
77
78#endif
79
3bc29f0a 80#endif /* LTTNG_TRACE_PRINTK_H */
b87700e3
AG
81
82/* This part must be outside protection */
83#include "../../../probes/define_trace.h"
This page took 0.027189 seconds and 4 git commands to generate.