Commit | Line | Data |
---|---|---|
9f36eaed | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
b87700e3 AG |
2 | #undef TRACE_SYSTEM |
3 | #define TRACE_SYSTEM random | |
4 | ||
3bc29f0a MD |
5 | #if !defined(LTTNG_TRACE_RANDOM_H) || defined(TRACE_HEADER_MULTI_READ) |
6 | #define LTTNG_TRACE_RANDOM_H | |
b87700e3 | 7 | |
6ec43db8 | 8 | #include <probes/lttng-tracepoint-event.h> |
b87700e3 | 9 | #include <linux/writeback.h> |
b87700e3 | 10 | |
db812f00 MJ |
11 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,17,0)) |
12 | LTTNG_TRACEPOINT_EVENT_CLASS(random__mix_pool_bytes, | |
13 | TP_PROTO(int bytes, unsigned long IP), | |
14 | ||
15 | TP_ARGS(bytes, IP), | |
16 | ||
17 | TP_FIELDS( | |
18 | ctf_integer(int, bytes, bytes) | |
19 | ctf_integer_hex(unsigned long, IP, IP) | |
20 | ) | |
21 | ) | |
22 | ||
23 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(random__mix_pool_bytes, mix_pool_bytes, | |
24 | ||
25 | random_mix_pool_bytes, | |
26 | ||
27 | TP_PROTO(int bytes, unsigned long IP), | |
28 | ||
29 | TP_ARGS(bytes, IP) | |
30 | ) | |
31 | ||
32 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(random__mix_pool_bytes, mix_pool_bytes_nolock, | |
33 | ||
34 | random_mix_pool_bytes_nolock, | |
35 | ||
36 | TP_PROTO(int bytes, unsigned long IP), | |
37 | ||
38 | TP_ARGS(bytes, IP) | |
39 | ) | |
40 | #else | |
3bc29f0a | 41 | LTTNG_TRACEPOINT_EVENT_CLASS(random__mix_pool_bytes, |
b87700e3 AG |
42 | TP_PROTO(const char *pool_name, int bytes, unsigned long IP), |
43 | ||
44 | TP_ARGS(pool_name, bytes, IP), | |
45 | ||
f127e61e MD |
46 | TP_FIELDS( |
47 | ctf_string(pool_name, pool_name) | |
48 | ctf_integer(int, bytes, bytes) | |
49 | ctf_integer(unsigned long, IP, IP) | |
50 | ) | |
b87700e3 AG |
51 | ) |
52 | ||
3bc29f0a | 53 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(random__mix_pool_bytes, mix_pool_bytes, |
9cf29d3e MD |
54 | |
55 | random_mix_pool_bytes, | |
56 | ||
b87700e3 AG |
57 | TP_PROTO(const char *pool_name, int bytes, unsigned long IP), |
58 | ||
59 | TP_ARGS(pool_name, bytes, IP) | |
60 | ) | |
61 | ||
3bc29f0a | 62 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(random__mix_pool_bytes, mix_pool_bytes_nolock, |
9cf29d3e MD |
63 | |
64 | random_mix_pool_bytes_nolock, | |
65 | ||
b87700e3 AG |
66 | TP_PROTO(const char *pool_name, int bytes, unsigned long IP), |
67 | ||
68 | TP_ARGS(pool_name, bytes, IP) | |
69 | ) | |
db812f00 | 70 | #endif |
b87700e3 | 71 | |
db812f00 MJ |
72 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,17,0)) |
73 | LTTNG_TRACEPOINT_EVENT_MAP(credit_entropy_bits, | |
74 | ||
75 | random_credit_entropy_bits, | |
76 | ||
77 | TP_PROTO(int bits, int entropy_count, unsigned long IP), | |
78 | ||
79 | TP_ARGS(bits, entropy_count, IP), | |
80 | ||
81 | TP_FIELDS( | |
82 | ctf_integer(int, bits, bits) | |
83 | ctf_integer(int, entropy_count, entropy_count) | |
84 | ctf_integer_hex(unsigned long, IP, IP) | |
85 | ) | |
86 | ) | |
87 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,2,0)) | |
a6a26911 MJ |
88 | LTTNG_TRACEPOINT_EVENT_MAP(credit_entropy_bits, |
89 | ||
90 | random_credit_entropy_bits, | |
91 | ||
92 | TP_PROTO(const char *pool_name, int bits, int entropy_count, | |
93 | unsigned long IP), | |
94 | ||
95 | TP_ARGS(pool_name, bits, entropy_count, IP), | |
96 | ||
97 | TP_FIELDS( | |
98 | ctf_string(pool_name, pool_name) | |
99 | ctf_integer(int, bits, bits) | |
100 | ctf_integer(int, entropy_count, entropy_count) | |
101 | ctf_integer(unsigned long, IP, IP) | |
102 | ) | |
103 | ) | |
104 | #else | |
3bc29f0a | 105 | LTTNG_TRACEPOINT_EVENT_MAP(credit_entropy_bits, |
9cf29d3e MD |
106 | |
107 | random_credit_entropy_bits, | |
108 | ||
b87700e3 AG |
109 | TP_PROTO(const char *pool_name, int bits, int entropy_count, |
110 | int entropy_total, unsigned long IP), | |
111 | ||
112 | TP_ARGS(pool_name, bits, entropy_count, entropy_total, IP), | |
113 | ||
f127e61e MD |
114 | TP_FIELDS( |
115 | ctf_string(pool_name, pool_name) | |
116 | ctf_integer(int, bits, bits) | |
117 | ctf_integer(int, entropy_count, entropy_count) | |
118 | ctf_integer(int, entropy_total, entropy_total) | |
119 | ctf_integer(unsigned long, IP, IP) | |
120 | ) | |
b87700e3 | 121 | ) |
a6a26911 | 122 | #endif |
b87700e3 | 123 | |
3bc29f0a | 124 | LTTNG_TRACEPOINT_EVENT_MAP(get_random_bytes, |
9cf29d3e MD |
125 | |
126 | random_get_random_bytes, | |
127 | ||
b87700e3 AG |
128 | TP_PROTO(int nbytes, unsigned long IP), |
129 | ||
130 | TP_ARGS(nbytes, IP), | |
131 | ||
f127e61e MD |
132 | TP_FIELDS( |
133 | ctf_integer(int, nbytes, nbytes) | |
134 | ctf_integer(unsigned long, IP, IP) | |
135 | ) | |
b87700e3 AG |
136 | ) |
137 | ||
db812f00 MJ |
138 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,17,0)) |
139 | LTTNG_TRACEPOINT_EVENT_CLASS(random__extract_entropy, | |
140 | TP_PROTO(int nbytes, int entropy_count, unsigned long IP), | |
141 | ||
142 | TP_ARGS(nbytes, entropy_count, IP), | |
143 | ||
144 | TP_FIELDS( | |
145 | ctf_integer(int, nbytes, nbytes) | |
146 | ctf_integer(int, entropy_count, entropy_count) | |
147 | ctf_integer_hex(unsigned long, IP, IP) | |
148 | ) | |
149 | ) | |
150 | ||
151 | ||
152 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(random__extract_entropy, extract_entropy, | |
153 | ||
154 | random_extract_entropy, | |
155 | ||
156 | TP_PROTO(int nbytes, int entropy_count, unsigned long IP), | |
157 | ||
158 | TP_ARGS(nbytes, entropy_count, IP) | |
159 | ) | |
160 | ||
161 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(random__extract_entropy, extract_entropy_user, | |
162 | ||
163 | random_extract_entropy_user, | |
164 | ||
165 | TP_PROTO(int nbytes, int entropy_count, unsigned long IP), | |
166 | ||
167 | TP_ARGS(nbytes, entropy_count, IP) | |
168 | ) | |
169 | #else | |
3bc29f0a | 170 | LTTNG_TRACEPOINT_EVENT_CLASS(random__extract_entropy, |
b87700e3 AG |
171 | TP_PROTO(const char *pool_name, int nbytes, int entropy_count, |
172 | unsigned long IP), | |
173 | ||
174 | TP_ARGS(pool_name, nbytes, entropy_count, IP), | |
175 | ||
f127e61e MD |
176 | TP_FIELDS( |
177 | ctf_string(pool_name, pool_name) | |
178 | ctf_integer(int, nbytes, nbytes) | |
179 | ctf_integer(int, entropy_count, entropy_count) | |
180 | ctf_integer(unsigned long, IP, IP) | |
181 | ) | |
b87700e3 AG |
182 | ) |
183 | ||
184 | ||
3bc29f0a | 185 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(random__extract_entropy, extract_entropy, |
9cf29d3e MD |
186 | |
187 | random_extract_entropy, | |
188 | ||
b87700e3 AG |
189 | TP_PROTO(const char *pool_name, int nbytes, int entropy_count, |
190 | unsigned long IP), | |
191 | ||
192 | TP_ARGS(pool_name, nbytes, entropy_count, IP) | |
193 | ) | |
194 | ||
3bc29f0a | 195 | LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(random__extract_entropy, extract_entropy_user, |
9cf29d3e MD |
196 | |
197 | random_extract_entropy_user, | |
198 | ||
b87700e3 AG |
199 | TP_PROTO(const char *pool_name, int nbytes, int entropy_count, |
200 | unsigned long IP), | |
201 | ||
202 | TP_ARGS(pool_name, nbytes, entropy_count, IP) | |
203 | ) | |
db812f00 | 204 | #endif |
b87700e3 AG |
205 | |
206 | ||
207 | ||
3bc29f0a | 208 | #endif /* LTTNG_TRACE_RANDOM_H */ |
b87700e3 AG |
209 | |
210 | /* This part must be outside protection */ | |
6ec43db8 | 211 | #include <probes/define_trace.h> |