Commit | Line | Data |
---|---|---|
b7cdc182 | 1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
b87700e3 AG |
2 | #undef TRACE_SYSTEM |
3 | #define TRACE_SYSTEM ext4 | |
4 | ||
3bc29f0a MD |
5 | #if !defined(LTTNG_TRACE_EXT4_H) || defined(TRACE_HEADER_MULTI_READ) |
6 | #define LTTNG_TRACE_EXT4_H | |
b87700e3 | 7 | |
3b4aafcb | 8 | #include <lttng/tracepoint-event.h> |
b87700e3 | 9 | #include <linux/writeback.h> |
5f4c791e | 10 | #include <lttng/kernel-version.h> |
b87700e3 AG |
11 | |
12 | #ifndef _TRACE_EXT4_DEF_ | |
13 | #define _TRACE_EXT4_DEF_ | |
14 | struct ext4_allocation_context; | |
15 | struct ext4_allocation_request; | |
16 | struct ext4_prealloc_space; | |
17 | struct ext4_inode_info; | |
18 | struct mpage_da_data; | |
19 | struct ext4_map_blocks; | |
5f4c791e | 20 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,2,0)) |
b87700e3 AG |
21 | struct ext4_extent; |
22 | #endif | |
23 | #endif | |
24 | ||
25 | #define EXT4_I(inode) (container_of(inode, struct ext4_inode_info, vfs_inode)) | |
5f4c791e | 26 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,1,0)) |
b87700e3 AG |
27 | #define TP_MODE_T __u16 |
28 | #else | |
29 | #define TP_MODE_T umode_t | |
30 | #endif | |
31 | ||
3bc29f0a | 32 | LTTNG_TRACEPOINT_EVENT(ext4_free_inode, |
b87700e3 AG |
33 | TP_PROTO(struct inode *inode), |
34 | ||
35 | TP_ARGS(inode), | |
36 | ||
f127e61e MD |
37 | TP_FIELDS( |
38 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
39 | ctf_integer(ino_t, ino, inode->i_ino) | |
5f4c791e | 40 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,5,0)) |
f127e61e MD |
41 | ctf_integer(uid_t, uid, i_uid_read(inode)) |
42 | ctf_integer(gid_t, gid, i_gid_read(inode)) | |
b87700e3 | 43 | #else |
f127e61e MD |
44 | ctf_integer(uid_t, uid, inode->i_uid) |
45 | ctf_integer(gid_t, gid, inode->i_gid) | |
b87700e3 | 46 | #endif |
f127e61e MD |
47 | ctf_integer(__u64, blocks, inode->i_blocks) |
48 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
49 | ) | |
b87700e3 AG |
50 | ) |
51 | ||
3bc29f0a | 52 | LTTNG_TRACEPOINT_EVENT(ext4_request_inode, |
b87700e3 AG |
53 | TP_PROTO(struct inode *dir, int mode), |
54 | ||
55 | TP_ARGS(dir, mode), | |
56 | ||
f127e61e MD |
57 | TP_FIELDS( |
58 | ctf_integer(dev_t, dev, dir->i_sb->s_dev) | |
59 | ctf_integer(ino_t, dir, dir->i_ino) | |
60 | ctf_integer(TP_MODE_T, mode, mode) | |
61 | ) | |
b87700e3 AG |
62 | ) |
63 | ||
3bc29f0a | 64 | LTTNG_TRACEPOINT_EVENT(ext4_allocate_inode, |
b87700e3 AG |
65 | TP_PROTO(struct inode *inode, struct inode *dir, int mode), |
66 | ||
67 | TP_ARGS(inode, dir, mode), | |
68 | ||
f127e61e MD |
69 | TP_FIELDS( |
70 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
71 | ctf_integer(ino_t, ino, inode->i_ino) | |
72 | ctf_integer(ino_t, dir, dir->i_ino) | |
73 | ctf_integer(TP_MODE_T, mode, mode) | |
74 | ) | |
b87700e3 AG |
75 | ) |
76 | ||
3bc29f0a | 77 | LTTNG_TRACEPOINT_EVENT(ext4_evict_inode, |
b87700e3 AG |
78 | TP_PROTO(struct inode *inode), |
79 | ||
80 | TP_ARGS(inode), | |
81 | ||
f127e61e MD |
82 | TP_FIELDS( |
83 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
84 | ctf_integer(ino_t, ino, inode->i_ino) | |
85 | ctf_integer(int, nlink, inode->i_nlink) | |
86 | ) | |
b87700e3 AG |
87 | ) |
88 | ||
3bc29f0a | 89 | LTTNG_TRACEPOINT_EVENT(ext4_drop_inode, |
b87700e3 AG |
90 | TP_PROTO(struct inode *inode, int drop), |
91 | ||
92 | TP_ARGS(inode, drop), | |
93 | ||
f127e61e MD |
94 | TP_FIELDS( |
95 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
96 | ctf_integer(ino_t, ino, inode->i_ino) | |
97 | ctf_integer(int, drop, drop) | |
98 | ) | |
b87700e3 AG |
99 | ) |
100 | ||
3bc29f0a | 101 | LTTNG_TRACEPOINT_EVENT(ext4_mark_inode_dirty, |
b87700e3 AG |
102 | TP_PROTO(struct inode *inode, unsigned long IP), |
103 | ||
104 | TP_ARGS(inode, IP), | |
105 | ||
f127e61e MD |
106 | TP_FIELDS( |
107 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
108 | ctf_integer(ino_t, ino, inode->i_ino) | |
2c054599 | 109 | ctf_integer_hex(unsigned long, ip, IP) |
f127e61e | 110 | ) |
b87700e3 AG |
111 | ) |
112 | ||
3bc29f0a | 113 | LTTNG_TRACEPOINT_EVENT(ext4_begin_ordered_truncate, |
b87700e3 AG |
114 | TP_PROTO(struct inode *inode, loff_t new_size), |
115 | ||
116 | TP_ARGS(inode, new_size), | |
117 | ||
f127e61e MD |
118 | TP_FIELDS( |
119 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
120 | ctf_integer(ino_t, ino, inode->i_ino) | |
121 | ctf_integer(loff_t, new_size, new_size) | |
122 | ) | |
b87700e3 | 123 | ) |
b87700e3 | 124 | |
b5d1c386 MJ |
125 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,19,0)) |
126 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__write_begin, | |
127 | ||
128 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len), | |
129 | ||
130 | TP_ARGS(inode, pos, len), | |
131 | ||
132 | TP_FIELDS( | |
133 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
134 | ctf_integer(ino_t, ino, inode->i_ino) | |
135 | ctf_integer(loff_t, pos, pos) | |
136 | ctf_integer(unsigned int, len, len) | |
137 | ) | |
138 | ) | |
139 | ||
140 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin, ext4_write_begin, | |
141 | ||
142 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len), | |
143 | ||
144 | TP_ARGS(inode, pos, len) | |
145 | ) | |
146 | ||
147 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin, ext4_da_write_begin, | |
148 | ||
149 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len), | |
150 | ||
151 | TP_ARGS(inode, pos, len) | |
152 | ) | |
153 | #else | |
3bc29f0a | 154 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__write_begin, |
b87700e3 AG |
155 | |
156 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
157 | unsigned int flags), | |
158 | ||
159 | TP_ARGS(inode, pos, len, flags), | |
160 | ||
f127e61e MD |
161 | TP_FIELDS( |
162 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
163 | ctf_integer(ino_t, ino, inode->i_ino) | |
164 | ctf_integer(loff_t, pos, pos) | |
165 | ctf_integer(unsigned int, len, len) | |
166 | ctf_integer(unsigned int, flags, flags) | |
167 | ) | |
b87700e3 AG |
168 | ) |
169 | ||
3bc29f0a | 170 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin, ext4_write_begin, |
b87700e3 AG |
171 | |
172 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
173 | unsigned int flags), | |
174 | ||
175 | TP_ARGS(inode, pos, len, flags) | |
176 | ) | |
177 | ||
3bc29f0a | 178 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_begin, ext4_da_write_begin, |
b87700e3 AG |
179 | |
180 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
181 | unsigned int flags), | |
182 | ||
183 | TP_ARGS(inode, pos, len, flags) | |
184 | ) | |
b5d1c386 | 185 | #endif |
b87700e3 | 186 | |
3bc29f0a | 187 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__write_end, |
b87700e3 AG |
188 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, |
189 | unsigned int copied), | |
190 | ||
191 | TP_ARGS(inode, pos, len, copied), | |
192 | ||
f127e61e MD |
193 | TP_FIELDS( |
194 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
195 | ctf_integer(ino_t, ino, inode->i_ino) | |
196 | ctf_integer(loff_t, pos, pos) | |
197 | ctf_integer(unsigned int, len, len) | |
198 | ctf_integer(unsigned int, copied, copied) | |
199 | ) | |
b87700e3 AG |
200 | ) |
201 | ||
3bc29f0a | 202 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end, ext4_ordered_write_end, |
b87700e3 AG |
203 | |
204 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
205 | unsigned int copied), | |
206 | ||
207 | TP_ARGS(inode, pos, len, copied) | |
208 | ) | |
209 | ||
3bc29f0a | 210 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end, ext4_writeback_write_end, |
b87700e3 AG |
211 | |
212 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
213 | unsigned int copied), | |
214 | ||
215 | TP_ARGS(inode, pos, len, copied) | |
216 | ) | |
217 | ||
3bc29f0a | 218 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end, ext4_journalled_write_end, |
b87700e3 AG |
219 | |
220 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
221 | unsigned int copied), | |
222 | ||
223 | TP_ARGS(inode, pos, len, copied) | |
224 | ) | |
225 | ||
3bc29f0a | 226 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__write_end, ext4_da_write_end, |
b87700e3 AG |
227 | |
228 | TP_PROTO(struct inode *inode, loff_t pos, unsigned int len, | |
229 | unsigned int copied), | |
230 | ||
231 | TP_ARGS(inode, pos, len, copied) | |
232 | ) | |
233 | ||
3bc29f0a | 234 | LTTNG_TRACEPOINT_EVENT(ext4_da_writepages, |
b87700e3 AG |
235 | TP_PROTO(struct inode *inode, struct writeback_control *wbc), |
236 | ||
237 | TP_ARGS(inode, wbc), | |
238 | ||
f127e61e MD |
239 | TP_FIELDS( |
240 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
241 | ctf_integer(ino_t, ino, inode->i_ino) | |
242 | ctf_integer(long, nr_to_write, wbc->nr_to_write) | |
243 | ctf_integer(long, pages_skipped, wbc->pages_skipped) | |
244 | ctf_integer(loff_t, range_start, wbc->range_start) | |
245 | ctf_integer(loff_t, range_end, wbc->range_end) | |
246 | ctf_integer(pgoff_t, writeback_index, inode->i_mapping->writeback_index) | |
f127e61e | 247 | ctf_integer(int, sync_mode, wbc->sync_mode) |
f127e61e | 248 | ctf_integer(char, for_kupdate, wbc->for_kupdate) |
f127e61e MD |
249 | ctf_integer(char, range_cyclic, wbc->range_cyclic) |
250 | ) | |
b87700e3 AG |
251 | ) |
252 | ||
5f4c791e | 253 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 254 | |
3bc29f0a | 255 | LTTNG_TRACEPOINT_EVENT(ext4_da_write_pages, |
00be8842 MD |
256 | TP_PROTO(struct inode *inode, pgoff_t first_page, |
257 | struct writeback_control *wbc), | |
258 | ||
259 | TP_ARGS(inode, first_page, wbc), | |
260 | ||
f127e61e MD |
261 | TP_FIELDS( |
262 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
263 | ctf_integer(ino_t, ino, inode->i_ino) | |
264 | ctf_integer(pgoff_t, first_page, first_page) | |
265 | ctf_integer(long, nr_to_write, wbc->nr_to_write) | |
266 | ctf_integer(int, sync_mode, wbc->sync_mode) | |
267 | ) | |
00be8842 MD |
268 | ) |
269 | ||
270 | #else | |
271 | ||
3bc29f0a | 272 | LTTNG_TRACEPOINT_EVENT(ext4_da_write_pages, |
b87700e3 AG |
273 | TP_PROTO(struct inode *inode, struct mpage_da_data *mpd), |
274 | ||
275 | TP_ARGS(inode, mpd), | |
276 | ||
f127e61e MD |
277 | TP_FIELDS( |
278 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
279 | ctf_integer(ino_t, ino, inode->i_ino) | |
280 | ctf_integer(__u64, b_blocknr, mpd->b_blocknr) | |
281 | ctf_integer(__u32, b_size, mpd->b_size) | |
282 | ctf_integer(__u32, b_state, mpd->b_state) | |
283 | ctf_integer(unsigned long, first_page, mpd->first_page) | |
284 | ctf_integer(int, io_done, mpd->io_done) | |
285 | ctf_integer(int, pages_written, mpd->pages_written) | |
7e626201 | 286 | ctf_integer(int, sync_mode, mpd->wbc->sync_mode) |
f127e61e | 287 | ) |
b87700e3 AG |
288 | ) |
289 | ||
00be8842 MD |
290 | #endif |
291 | ||
5f4c791e | 292 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
c1b29b59 | 293 | |
3bc29f0a | 294 | LTTNG_TRACEPOINT_EVENT(ext4_da_write_pages_extent, |
c1b29b59 MD |
295 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map), |
296 | ||
297 | TP_ARGS(inode, map), | |
298 | ||
f127e61e MD |
299 | TP_FIELDS( |
300 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
301 | ctf_integer(ino_t, ino, inode->i_ino) | |
302 | ctf_integer(__u64, lblk, map->m_lblk) | |
303 | ctf_integer(__u32, len, map->m_len) | |
304 | ctf_integer(__u32, flags, map->m_flags) | |
305 | ) | |
c1b29b59 MD |
306 | ) |
307 | ||
308 | #endif | |
309 | ||
3bc29f0a | 310 | LTTNG_TRACEPOINT_EVENT(ext4_da_writepages_result, |
b87700e3 AG |
311 | TP_PROTO(struct inode *inode, struct writeback_control *wbc, |
312 | int ret, int pages_written), | |
313 | ||
314 | TP_ARGS(inode, wbc, ret, pages_written), | |
315 | ||
f127e61e MD |
316 | TP_FIELDS( |
317 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
318 | ctf_integer(ino_t, ino, inode->i_ino) | |
319 | ctf_integer(int, ret, ret) | |
320 | ctf_integer(int, pages_written, pages_written) | |
321 | ctf_integer(long, pages_skipped, wbc->pages_skipped) | |
322 | ctf_integer(pgoff_t, writeback_index, inode->i_mapping->writeback_index) | |
f127e61e | 323 | ctf_integer(int, sync_mode, wbc->sync_mode) |
f127e61e | 324 | ) |
b87700e3 AG |
325 | ) |
326 | ||
3bc29f0a | 327 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__page_op, |
b87700e3 AG |
328 | TP_PROTO(struct page *page), |
329 | ||
330 | TP_ARGS(page), | |
331 | ||
f127e61e MD |
332 | TP_FIELDS( |
333 | ctf_integer(dev_t, dev, page->mapping->host->i_sb->s_dev) | |
334 | ctf_integer(ino_t, ino, page->mapping->host->i_ino) | |
335 | ctf_integer(pgoff_t, index, page->index) | |
336 | ) | |
b87700e3 AG |
337 | ) |
338 | ||
3bc29f0a | 339 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op, ext4_writepage, |
b87700e3 AG |
340 | |
341 | TP_PROTO(struct page *page), | |
342 | ||
343 | TP_ARGS(page) | |
344 | ) | |
b87700e3 | 345 | |
3bc29f0a | 346 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op, ext4_readpage, |
b87700e3 AG |
347 | |
348 | TP_PROTO(struct page *page), | |
349 | ||
350 | TP_ARGS(page) | |
351 | ) | |
352 | ||
3bc29f0a | 353 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__page_op, ext4_releasepage, |
b87700e3 AG |
354 | |
355 | TP_PROTO(struct page *page), | |
356 | ||
357 | TP_ARGS(page) | |
358 | ) | |
359 | ||
5f4c791e | 360 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 361 | |
3bc29f0a | 362 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4_invalidatepage_op, |
00be8842 MD |
363 | TP_PROTO(struct page *page, unsigned int offset, unsigned int length), |
364 | ||
365 | TP_ARGS(page, offset, length), | |
366 | ||
f127e61e MD |
367 | TP_FIELDS( |
368 | ctf_integer(dev_t, dev, page->mapping->host->i_sb->s_dev) | |
369 | ctf_integer(ino_t, ino, page->mapping->host->i_ino) | |
370 | ctf_integer(pgoff_t, index, page->index) | |
371 | ctf_integer(unsigned int, offset, offset) | |
372 | ctf_integer(unsigned int, length, length) | |
373 | ) | |
00be8842 MD |
374 | ) |
375 | ||
3bc29f0a | 376 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4_invalidatepage_op, ext4_invalidatepage, |
00be8842 MD |
377 | TP_PROTO(struct page *page, unsigned int offset, unsigned int length), |
378 | ||
379 | TP_ARGS(page, offset, length) | |
380 | ) | |
381 | ||
3bc29f0a | 382 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4_invalidatepage_op, ext4_journalled_invalidatepage, |
00be8842 MD |
383 | TP_PROTO(struct page *page, unsigned int offset, unsigned int length), |
384 | ||
385 | TP_ARGS(page, offset, length) | |
386 | ) | |
387 | ||
388 | #else | |
389 | ||
3bc29f0a | 390 | LTTNG_TRACEPOINT_EVENT(ext4_invalidatepage, |
b87700e3 AG |
391 | TP_PROTO(struct page *page, unsigned long offset), |
392 | ||
393 | TP_ARGS(page, offset), | |
394 | ||
f127e61e MD |
395 | TP_FIELDS( |
396 | ctf_integer(dev_t, dev, page->mapping->host->i_sb->s_dev) | |
397 | ctf_integer(ino_t, ino, page->mapping->host->i_ino) | |
398 | ctf_integer(pgoff_t, index, page->index) | |
399 | ctf_integer(unsigned long, offset, offset) | |
b87700e3 | 400 | |
f127e61e | 401 | ) |
b87700e3 | 402 | ) |
00be8842 MD |
403 | |
404 | #endif | |
405 | ||
3bc29f0a | 406 | LTTNG_TRACEPOINT_EVENT(ext4_discard_blocks, |
b87700e3 AG |
407 | TP_PROTO(struct super_block *sb, unsigned long long blk, |
408 | unsigned long long count), | |
409 | ||
410 | TP_ARGS(sb, blk, count), | |
411 | ||
f127e61e MD |
412 | TP_FIELDS( |
413 | ctf_integer(dev_t, dev, sb->s_dev) | |
414 | ctf_integer(__u64, blk, blk) | |
415 | ctf_integer(__u64, count, count) | |
416 | ) | |
b87700e3 AG |
417 | ) |
418 | ||
3bc29f0a | 419 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__mb_new_pa, |
b87700e3 AG |
420 | TP_PROTO(struct ext4_allocation_context *ac, |
421 | struct ext4_prealloc_space *pa), | |
422 | ||
423 | TP_ARGS(ac, pa), | |
424 | ||
f127e61e MD |
425 | TP_FIELDS( |
426 | ctf_integer(dev_t, dev, ac->ac_sb->s_dev) | |
427 | ctf_integer(ino_t, ino, ac->ac_inode->i_ino) | |
428 | ctf_integer(__u64, pa_pstart, pa->pa_pstart) | |
429 | ctf_integer(__u64, pa_lstart, pa->pa_lstart) | |
430 | ctf_integer(__u32, pa_len, pa->pa_len) | |
431 | ) | |
b87700e3 AG |
432 | ) |
433 | ||
3bc29f0a | 434 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mb_new_pa, ext4_mb_new_inode_pa, |
b87700e3 AG |
435 | |
436 | TP_PROTO(struct ext4_allocation_context *ac, | |
437 | struct ext4_prealloc_space *pa), | |
438 | ||
439 | TP_ARGS(ac, pa) | |
440 | ) | |
441 | ||
3bc29f0a | 442 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mb_new_pa, ext4_mb_new_group_pa, |
b87700e3 AG |
443 | |
444 | TP_PROTO(struct ext4_allocation_context *ac, | |
445 | struct ext4_prealloc_space *pa), | |
446 | ||
447 | TP_ARGS(ac, pa) | |
448 | ) | |
449 | ||
3bc29f0a | 450 | LTTNG_TRACEPOINT_EVENT(ext4_mb_release_inode_pa, |
b87700e3 | 451 | TP_PROTO( |
b87700e3 AG |
452 | struct ext4_prealloc_space *pa, |
453 | unsigned long long block, unsigned int count), | |
454 | ||
b87700e3 | 455 | TP_ARGS(pa, block, count), |
b87700e3 | 456 | |
f127e61e | 457 | TP_FIELDS( |
f127e61e MD |
458 | ctf_integer(dev_t, dev, pa->pa_inode->i_sb->s_dev) |
459 | ctf_integer(ino_t, ino, pa->pa_inode->i_ino) | |
f127e61e MD |
460 | ctf_integer(__u64, block, block) |
461 | ctf_integer(__u32, count, count) | |
462 | ) | |
b87700e3 AG |
463 | ) |
464 | ||
5f4c791e | 465 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,3,0)) |
3bc29f0a | 466 | LTTNG_TRACEPOINT_EVENT(ext4_mb_release_group_pa, |
b87700e3 | 467 | |
b87700e3 AG |
468 | TP_PROTO(struct super_block *sb, struct ext4_prealloc_space *pa), |
469 | ||
470 | TP_ARGS(sb, pa), | |
b87700e3 | 471 | |
aa71c949 MJ |
472 | TP_FIELDS( |
473 | ctf_integer(dev_t, dev, sb->s_dev) | |
474 | ctf_integer(__u64, pa_pstart, pa->pa_pstart) | |
475 | ctf_integer(__u32, pa_len, pa->pa_len) | |
476 | ) | |
477 | ) | |
b87700e3 | 478 | #else |
aa71c949 | 479 | LTTNG_TRACEPOINT_EVENT(ext4_mb_release_group_pa, |
b87700e3 | 480 | |
aa71c949 MJ |
481 | TP_PROTO(struct ext4_prealloc_space *pa), |
482 | ||
483 | TP_ARGS(pa), | |
b87700e3 | 484 | |
f127e61e | 485 | TP_FIELDS( |
f127e61e | 486 | ctf_integer(dev_t, dev, pa->pa_inode->i_sb->s_dev) |
f127e61e MD |
487 | ctf_integer(__u64, pa_pstart, pa->pa_pstart) |
488 | ctf_integer(__u32, pa_len, pa->pa_len) | |
489 | ) | |
b87700e3 | 490 | ) |
aa71c949 | 491 | #endif |
b87700e3 | 492 | |
5f4c791e | 493 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,9,0) || \ |
b6af46d1 | 494 | LTTNG_KERNEL_RANGE(5,8,6, 5,9,0)) |
347a7ba0 MJ |
495 | LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations, |
496 | TP_PROTO(struct inode *inode, unsigned int len, unsigned int needed), | |
497 | ||
498 | TP_ARGS(inode, len, needed), | |
499 | ||
500 | TP_FIELDS( | |
501 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
502 | ctf_integer(ino_t, ino, inode->i_ino) | |
503 | ctf_integer(unsigned int, len, len) | |
504 | ctf_integer(unsigned int, needed, needed) | |
505 | ) | |
506 | ) | |
507 | #else | |
3bc29f0a | 508 | LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations, |
b87700e3 AG |
509 | TP_PROTO(struct inode *inode), |
510 | ||
511 | TP_ARGS(inode), | |
512 | ||
f127e61e MD |
513 | TP_FIELDS( |
514 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
515 | ctf_integer(ino_t, ino, inode->i_ino) | |
516 | ) | |
b87700e3 | 517 | ) |
347a7ba0 | 518 | #endif |
b87700e3 | 519 | |
3bc29f0a | 520 | LTTNG_TRACEPOINT_EVENT(ext4_mb_discard_preallocations, |
b87700e3 AG |
521 | TP_PROTO(struct super_block *sb, int needed), |
522 | ||
523 | TP_ARGS(sb, needed), | |
524 | ||
f127e61e MD |
525 | TP_FIELDS( |
526 | ctf_integer(dev_t, dev, sb->s_dev) | |
527 | ctf_integer(int, needed, needed) | |
528 | ) | |
b87700e3 AG |
529 | ) |
530 | ||
3bc29f0a | 531 | LTTNG_TRACEPOINT_EVENT(ext4_request_blocks, |
b87700e3 AG |
532 | TP_PROTO(struct ext4_allocation_request *ar), |
533 | ||
534 | TP_ARGS(ar), | |
535 | ||
f127e61e MD |
536 | TP_FIELDS( |
537 | ctf_integer(dev_t, dev, ar->inode->i_sb->s_dev) | |
538 | ctf_integer(ino_t, ino, ar->inode->i_ino) | |
539 | ctf_integer(unsigned int, len, ar->len) | |
540 | ctf_integer(__u32, logical, ar->logical) | |
541 | ctf_integer(__u32, lleft, ar->lleft) | |
542 | ctf_integer(__u32, lright, ar->lright) | |
543 | ctf_integer(__u64, goal, ar->goal) | |
544 | ctf_integer(__u64, pleft, ar->pleft) | |
545 | ctf_integer(__u64, pright, ar->pright) | |
546 | ctf_integer(unsigned int, flags, ar->flags) | |
547 | ) | |
b87700e3 AG |
548 | ) |
549 | ||
3bc29f0a | 550 | LTTNG_TRACEPOINT_EVENT(ext4_allocate_blocks, |
b87700e3 AG |
551 | TP_PROTO(struct ext4_allocation_request *ar, unsigned long long block), |
552 | ||
553 | TP_ARGS(ar, block), | |
554 | ||
f127e61e MD |
555 | TP_FIELDS( |
556 | ctf_integer(dev_t, dev, ar->inode->i_sb->s_dev) | |
557 | ctf_integer(ino_t, ino, ar->inode->i_ino) | |
558 | ctf_integer(__u64, block, block) | |
559 | ctf_integer(unsigned int, len, ar->len) | |
560 | ctf_integer(__u32, logical, ar->logical) | |
561 | ctf_integer(__u32, lleft, ar->lleft) | |
562 | ctf_integer(__u32, lright, ar->lright) | |
563 | ctf_integer(__u64, goal, ar->goal) | |
564 | ctf_integer(__u64, pleft, ar->pleft) | |
565 | ctf_integer(__u64, pright, ar->pright) | |
566 | ctf_integer(unsigned int, flags, ar->flags) | |
567 | ) | |
b87700e3 AG |
568 | ) |
569 | ||
3bc29f0a | 570 | LTTNG_TRACEPOINT_EVENT(ext4_free_blocks, |
b87700e3 AG |
571 | TP_PROTO(struct inode *inode, __u64 block, unsigned long count, |
572 | int flags), | |
573 | ||
574 | TP_ARGS(inode, block, count, flags), | |
b87700e3 | 575 | |
f127e61e MD |
576 | TP_FIELDS( |
577 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
578 | ctf_integer(ino_t, ino, inode->i_ino) | |
579 | ctf_integer(__u64, block, block) | |
580 | ctf_integer(unsigned long, count, count) | |
f127e61e MD |
581 | ctf_integer(int, flags, flags) |
582 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
f127e61e | 583 | ) |
b87700e3 AG |
584 | ) |
585 | ||
3bc29f0a | 586 | LTTNG_TRACEPOINT_EVENT(ext4_sync_file_enter, |
b87700e3 AG |
587 | TP_PROTO(struct file *file, int datasync), |
588 | ||
589 | TP_ARGS(file, datasync), | |
b87700e3 | 590 | |
f127e61e | 591 | TP_FIELDS( |
f127e61e MD |
592 | ctf_integer(dev_t, dev, file->f_path.dentry->d_inode->i_sb->s_dev) |
593 | ctf_integer(ino_t, ino, file->f_path.dentry->d_inode->i_ino) | |
594 | ctf_integer(ino_t, parent, file->f_path.dentry->d_parent->d_inode->i_ino) | |
f127e61e MD |
595 | ctf_integer(int, datasync, datasync) |
596 | ) | |
b87700e3 AG |
597 | ) |
598 | ||
3bc29f0a | 599 | LTTNG_TRACEPOINT_EVENT(ext4_sync_file_exit, |
b87700e3 AG |
600 | TP_PROTO(struct inode *inode, int ret), |
601 | ||
602 | TP_ARGS(inode, ret), | |
603 | ||
f127e61e MD |
604 | TP_FIELDS( |
605 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
606 | ctf_integer(ino_t, ino, inode->i_ino) | |
607 | ctf_integer(int, ret, ret) | |
608 | ) | |
b87700e3 | 609 | ) |
b87700e3 | 610 | |
3bc29f0a | 611 | LTTNG_TRACEPOINT_EVENT(ext4_sync_fs, |
b87700e3 AG |
612 | TP_PROTO(struct super_block *sb, int wait), |
613 | ||
614 | TP_ARGS(sb, wait), | |
615 | ||
f127e61e MD |
616 | TP_FIELDS( |
617 | ctf_integer(dev_t, dev, sb->s_dev) | |
618 | ctf_integer(int, wait, wait) | |
b87700e3 | 619 | |
f127e61e | 620 | ) |
b87700e3 AG |
621 | ) |
622 | ||
5f4c791e | 623 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0)) |
cf101116 MJ |
624 | LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks, |
625 | TP_PROTO(struct inode *inode), | |
626 | ||
627 | TP_ARGS(inode), | |
628 | ||
629 | TP_FIELDS( | |
630 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
631 | ctf_integer(ino_t, ino, inode->i_ino) | |
632 | ctf_integer(unsigned int, data_blocks, EXT4_I(inode)->i_reserved_data_blocks) | |
633 | ) | |
634 | ) | |
635 | #else | |
3bc29f0a | 636 | LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks, |
b87700e3 AG |
637 | TP_PROTO(struct inode *inode), |
638 | ||
639 | TP_ARGS(inode), | |
640 | ||
f127e61e MD |
641 | TP_FIELDS( |
642 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
643 | ctf_integer(ino_t, ino, inode->i_ino) | |
644 | ctf_integer(unsigned int, data_blocks, EXT4_I(inode)->i_reserved_data_blocks) | |
645 | ctf_integer(unsigned int, meta_blocks, EXT4_I(inode)->i_reserved_meta_blocks) | |
646 | ) | |
b87700e3 | 647 | ) |
cf101116 | 648 | #endif |
b87700e3 | 649 | |
3bc29f0a | 650 | LTTNG_TRACEPOINT_EVENT(ext4_mballoc_alloc, |
b87700e3 AG |
651 | TP_PROTO(struct ext4_allocation_context *ac), |
652 | ||
653 | TP_ARGS(ac), | |
654 | ||
f127e61e MD |
655 | TP_FIELDS( |
656 | ctf_integer(dev_t, dev, ac->ac_inode->i_sb->s_dev) | |
657 | ctf_integer(ino_t, ino, ac->ac_inode->i_ino) | |
658 | ctf_integer(__u32, orig_logical, ac->ac_o_ex.fe_logical) | |
659 | ctf_integer(int, orig_start, ac->ac_o_ex.fe_start) | |
660 | ctf_integer(__u32, orig_group, ac->ac_o_ex.fe_group) | |
661 | ctf_integer(int, orig_len, ac->ac_o_ex.fe_len) | |
662 | ctf_integer(__u32, goal_logical, ac->ac_g_ex.fe_logical) | |
663 | ctf_integer(int, goal_start, ac->ac_g_ex.fe_start) | |
664 | ctf_integer(__u32, goal_group, ac->ac_g_ex.fe_group) | |
665 | ctf_integer(int, goal_len, ac->ac_g_ex.fe_len) | |
666 | ctf_integer(__u32, result_logical, ac->ac_f_ex.fe_logical) | |
667 | ctf_integer(int, result_start, ac->ac_f_ex.fe_start) | |
668 | ctf_integer(__u32, result_group, ac->ac_f_ex.fe_group) | |
669 | ctf_integer(int, result_len, ac->ac_f_ex.fe_len) | |
670 | ctf_integer(__u16, found, ac->ac_found) | |
671 | ctf_integer(__u16, groups, ac->ac_groups_scanned) | |
672 | ctf_integer(__u16, buddy, ac->ac_buddy) | |
673 | ctf_integer(__u16, flags, ac->ac_flags) | |
674 | ctf_integer(__u16, tail, ac->ac_tail) | |
675 | ctf_integer(__u8, cr, ac->ac_criteria) | |
676 | ) | |
b87700e3 AG |
677 | ) |
678 | ||
3bc29f0a | 679 | LTTNG_TRACEPOINT_EVENT(ext4_mballoc_prealloc, |
b87700e3 AG |
680 | TP_PROTO(struct ext4_allocation_context *ac), |
681 | ||
682 | TP_ARGS(ac), | |
683 | ||
f127e61e MD |
684 | TP_FIELDS( |
685 | ctf_integer(dev_t, dev, ac->ac_inode->i_sb->s_dev) | |
686 | ctf_integer(ino_t, ino, ac->ac_inode->i_ino) | |
687 | ctf_integer(__u32, orig_logical, ac->ac_o_ex.fe_logical) | |
688 | ctf_integer(int, orig_start, ac->ac_o_ex.fe_start) | |
689 | ctf_integer(__u32, orig_group, ac->ac_o_ex.fe_group) | |
690 | ctf_integer(int, orig_len, ac->ac_o_ex.fe_len) | |
691 | ctf_integer(__u32, result_logical, ac->ac_b_ex.fe_logical) | |
692 | ctf_integer(int, result_start, ac->ac_b_ex.fe_start) | |
693 | ctf_integer(__u32, result_group, ac->ac_b_ex.fe_group) | |
694 | ctf_integer(int, result_len, ac->ac_b_ex.fe_len) | |
695 | ) | |
b87700e3 AG |
696 | ) |
697 | ||
3bc29f0a | 698 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__mballoc, |
b87700e3 AG |
699 | TP_PROTO(struct super_block *sb, |
700 | struct inode *inode, | |
701 | ext4_group_t group, | |
702 | ext4_grpblk_t start, | |
703 | ext4_grpblk_t len), | |
704 | ||
705 | TP_ARGS(sb, inode, group, start, len), | |
b87700e3 | 706 | |
f127e61e | 707 | TP_FIELDS( |
f127e61e MD |
708 | ctf_integer(dev_t, dev, sb->s_dev) |
709 | ctf_integer(ino_t, ino, inode ? inode->i_ino : 0) | |
710 | ctf_integer(int, result_start, start) | |
711 | ctf_integer(__u32, result_group, group) | |
712 | ctf_integer(int, result_len, len) | |
b87700e3 AG |
713 | ) |
714 | ) | |
715 | ||
3bc29f0a | 716 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mballoc, ext4_mballoc_discard, |
b87700e3 | 717 | |
b87700e3 AG |
718 | TP_PROTO(struct super_block *sb, |
719 | struct inode *inode, | |
720 | ext4_group_t group, | |
721 | ext4_grpblk_t start, | |
722 | ext4_grpblk_t len), | |
723 | ||
724 | TP_ARGS(sb, inode, group, start, len) | |
b87700e3 AG |
725 | ) |
726 | ||
3bc29f0a | 727 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mballoc, ext4_mballoc_free, |
b87700e3 | 728 | |
b87700e3 AG |
729 | TP_PROTO(struct super_block *sb, |
730 | struct inode *inode, | |
731 | ext4_group_t group, | |
732 | ext4_grpblk_t start, | |
733 | ext4_grpblk_t len), | |
734 | ||
735 | TP_ARGS(sb, inode, group, start, len) | |
b87700e3 AG |
736 | ) |
737 | ||
3bc29f0a | 738 | LTTNG_TRACEPOINT_EVENT(ext4_forget, |
b87700e3 AG |
739 | TP_PROTO(struct inode *inode, int is_metadata, __u64 block), |
740 | ||
741 | TP_ARGS(inode, is_metadata, block), | |
742 | ||
f127e61e MD |
743 | TP_FIELDS( |
744 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
745 | ctf_integer(ino_t, ino, inode->i_ino) | |
746 | ctf_integer(__u64, block, block) | |
747 | ctf_integer(int, is_metadata, is_metadata) | |
748 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
749 | ) | |
b87700e3 | 750 | ) |
b87700e3 | 751 | |
5f4c791e | 752 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0)) |
3bc29f0a | 753 | LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space, |
b87700e3 AG |
754 | TP_PROTO(struct inode *inode, int used_blocks, int quota_claim), |
755 | ||
756 | TP_ARGS(inode, used_blocks, quota_claim), | |
cf101116 MJ |
757 | |
758 | TP_FIELDS( | |
759 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
760 | ctf_integer(ino_t, ino, inode->i_ino) | |
761 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
762 | ctf_integer(int, used_blocks, used_blocks) | |
763 | ctf_integer(int, reserved_data_blocks, | |
764 | EXT4_I(inode)->i_reserved_data_blocks) | |
765 | ctf_integer(int, quota_claim, quota_claim) | |
766 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
767 | ) | |
768 | ) | |
5f4c791e | 769 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,2,0)) |
cf101116 MJ |
770 | LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space, |
771 | TP_PROTO(struct inode *inode, int used_blocks, int quota_claim), | |
772 | ||
773 | TP_ARGS(inode, used_blocks, quota_claim), | |
774 | ||
775 | TP_FIELDS( | |
776 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
777 | ctf_integer(ino_t, ino, inode->i_ino) | |
778 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
779 | ctf_integer(int, used_blocks, used_blocks) | |
780 | ctf_integer(int, reserved_data_blocks, | |
781 | EXT4_I(inode)->i_reserved_data_blocks) | |
782 | ctf_integer(int, reserved_meta_blocks, | |
783 | EXT4_I(inode)->i_reserved_meta_blocks) | |
784 | ctf_integer(int, allocated_meta_blocks, | |
785 | EXT4_I(inode)->i_allocated_meta_blocks) | |
786 | ctf_integer(int, quota_claim, quota_claim) | |
787 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
788 | ) | |
789 | ) | |
aa71c949 | 790 | #else |
cf101116 | 791 | LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space, |
b87700e3 AG |
792 | TP_PROTO(struct inode *inode, int used_blocks), |
793 | ||
794 | TP_ARGS(inode, used_blocks), | |
b87700e3 | 795 | |
f127e61e MD |
796 | TP_FIELDS( |
797 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
798 | ctf_integer(ino_t, ino, inode->i_ino) | |
799 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
800 | ctf_integer(int, used_blocks, used_blocks) | |
801 | ctf_integer(int, reserved_data_blocks, | |
b87700e3 | 802 | EXT4_I(inode)->i_reserved_data_blocks) |
f127e61e | 803 | ctf_integer(int, reserved_meta_blocks, |
b87700e3 | 804 | EXT4_I(inode)->i_reserved_meta_blocks) |
f127e61e | 805 | ctf_integer(int, allocated_meta_blocks, |
b87700e3 | 806 | EXT4_I(inode)->i_allocated_meta_blocks) |
f127e61e MD |
807 | ctf_integer(TP_MODE_T, mode, inode->i_mode) |
808 | ) | |
b87700e3 | 809 | ) |
cf101116 | 810 | #endif |
b87700e3 | 811 | |
5f4c791e | 812 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0)) |
cf101116 MJ |
813 | LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space, |
814 | TP_PROTO(struct inode *inode), | |
815 | ||
816 | TP_ARGS(inode), | |
817 | ||
818 | TP_FIELDS( | |
819 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
820 | ctf_integer(ino_t, ino, inode->i_ino) | |
821 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
822 | ctf_integer(int, reserved_data_blocks, | |
823 | EXT4_I(inode)->i_reserved_data_blocks) | |
824 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
825 | ) | |
826 | ) | |
5f4c791e | 827 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,2,0)) |
5780f1e8 MD |
828 | LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space, |
829 | TP_PROTO(struct inode *inode), | |
830 | ||
831 | TP_ARGS(inode), | |
832 | ||
833 | TP_FIELDS( | |
834 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
835 | ctf_integer(ino_t, ino, inode->i_ino) | |
836 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
837 | ctf_integer(int, reserved_data_blocks, | |
838 | EXT4_I(inode)->i_reserved_data_blocks) | |
839 | ctf_integer(int, reserved_meta_blocks, | |
840 | EXT4_I(inode)->i_reserved_meta_blocks) | |
841 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
842 | ) | |
843 | ) | |
aa71c949 | 844 | #else |
3bc29f0a | 845 | LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space, |
b87700e3 AG |
846 | TP_PROTO(struct inode *inode, int md_needed), |
847 | ||
848 | TP_ARGS(inode, md_needed), | |
849 | ||
f127e61e MD |
850 | TP_FIELDS( |
851 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
852 | ctf_integer(ino_t, ino, inode->i_ino) | |
853 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
854 | ctf_integer(int, md_needed, md_needed) | |
855 | ctf_integer(int, reserved_data_blocks, | |
b87700e3 | 856 | EXT4_I(inode)->i_reserved_data_blocks) |
f127e61e | 857 | ctf_integer(int, reserved_meta_blocks, |
b87700e3 | 858 | EXT4_I(inode)->i_reserved_meta_blocks) |
f127e61e MD |
859 | ctf_integer(TP_MODE_T, mode, inode->i_mode) |
860 | ) | |
b87700e3 | 861 | ) |
cf101116 MJ |
862 | #endif |
863 | ||
5f4c791e | 864 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0)) |
cf101116 MJ |
865 | LTTNG_TRACEPOINT_EVENT(ext4_da_release_space, |
866 | TP_PROTO(struct inode *inode, int freed_blocks), | |
867 | ||
868 | TP_ARGS(inode, freed_blocks), | |
b87700e3 | 869 | |
cf101116 MJ |
870 | TP_FIELDS( |
871 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
872 | ctf_integer(ino_t, ino, inode->i_ino) | |
873 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
874 | ctf_integer(int, freed_blocks, freed_blocks) | |
875 | ctf_integer(int, reserved_data_blocks, | |
876 | EXT4_I(inode)->i_reserved_data_blocks) | |
877 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
878 | ) | |
879 | ) | |
aa71c949 | 880 | #else |
3bc29f0a | 881 | LTTNG_TRACEPOINT_EVENT(ext4_da_release_space, |
b87700e3 AG |
882 | TP_PROTO(struct inode *inode, int freed_blocks), |
883 | ||
884 | TP_ARGS(inode, freed_blocks), | |
885 | ||
f127e61e MD |
886 | TP_FIELDS( |
887 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
888 | ctf_integer(ino_t, ino, inode->i_ino) | |
889 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
890 | ctf_integer(int, freed_blocks, freed_blocks) | |
891 | ctf_integer(int, reserved_data_blocks, | |
b87700e3 | 892 | EXT4_I(inode)->i_reserved_data_blocks) |
f127e61e | 893 | ctf_integer(int, reserved_meta_blocks, |
b87700e3 | 894 | EXT4_I(inode)->i_reserved_meta_blocks) |
f127e61e | 895 | ctf_integer(int, allocated_meta_blocks, |
b87700e3 | 896 | EXT4_I(inode)->i_allocated_meta_blocks) |
f127e61e MD |
897 | ctf_integer(TP_MODE_T, mode, inode->i_mode) |
898 | ) | |
b87700e3 AG |
899 | ) |
900 | #endif | |
901 | ||
3bc29f0a | 902 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__bitmap_load, |
b87700e3 AG |
903 | TP_PROTO(struct super_block *sb, unsigned long group), |
904 | ||
905 | TP_ARGS(sb, group), | |
906 | ||
f127e61e MD |
907 | TP_FIELDS( |
908 | ctf_integer(dev_t, dev, sb->s_dev) | |
909 | ctf_integer(__u32, group, group) | |
910 | ) | |
b87700e3 AG |
911 | ) |
912 | ||
3bc29f0a | 913 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_mb_bitmap_load, |
b87700e3 AG |
914 | |
915 | TP_PROTO(struct super_block *sb, unsigned long group), | |
916 | ||
917 | TP_ARGS(sb, group) | |
918 | ) | |
919 | ||
3bc29f0a | 920 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_mb_buddy_bitmap_load, |
b87700e3 AG |
921 | |
922 | TP_PROTO(struct super_block *sb, unsigned long group), | |
923 | ||
924 | TP_ARGS(sb, group) | |
925 | ) | |
b87700e3 | 926 | |
5f4c791e | 927 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,9,0)) |
20e546d0 MJ |
928 | LTTNG_TRACEPOINT_EVENT(ext4_read_block_bitmap_load, |
929 | TP_PROTO(struct super_block *sb, unsigned long group, bool prefetch), | |
930 | ||
931 | TP_ARGS(sb, group, prefetch), | |
932 | ||
933 | TP_FIELDS( | |
934 | ctf_integer(dev_t, dev, sb->s_dev) | |
935 | ctf_integer(__u32, group, group) | |
936 | ctf_integer(bool, prefetch, prefetch) | |
937 | ) | |
938 | ) | |
939 | #else | |
3bc29f0a | 940 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_read_block_bitmap_load, |
b87700e3 AG |
941 | |
942 | TP_PROTO(struct super_block *sb, unsigned long group), | |
943 | ||
944 | TP_ARGS(sb, group) | |
945 | ) | |
20e546d0 | 946 | #endif |
b87700e3 | 947 | |
3bc29f0a | 948 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_load_inode_bitmap, |
b87700e3 AG |
949 | |
950 | TP_PROTO(struct super_block *sb, unsigned long group), | |
951 | ||
952 | TP_ARGS(sb, group) | |
953 | ) | |
954 | ||
3bc29f0a | 955 | LTTNG_TRACEPOINT_EVENT(ext4_direct_IO_enter, |
b87700e3 AG |
956 | TP_PROTO(struct inode *inode, loff_t offset, unsigned long len, int rw), |
957 | ||
958 | TP_ARGS(inode, offset, len, rw), | |
959 | ||
f127e61e MD |
960 | TP_FIELDS( |
961 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
962 | ctf_integer(ino_t, ino, inode->i_ino) | |
963 | ctf_integer(loff_t, pos, offset) | |
964 | ctf_integer(unsigned long, len, len) | |
965 | ctf_integer(int, rw, rw) | |
966 | ) | |
b87700e3 AG |
967 | ) |
968 | ||
3bc29f0a | 969 | LTTNG_TRACEPOINT_EVENT(ext4_direct_IO_exit, |
b87700e3 AG |
970 | TP_PROTO(struct inode *inode, loff_t offset, unsigned long len, |
971 | int rw, int ret), | |
972 | ||
973 | TP_ARGS(inode, offset, len, rw, ret), | |
974 | ||
f127e61e MD |
975 | TP_FIELDS( |
976 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
977 | ctf_integer(ino_t, ino, inode->i_ino) | |
978 | ctf_integer(loff_t, pos, offset) | |
979 | ctf_integer(unsigned long, len, len) | |
980 | ctf_integer(int, rw, rw) | |
981 | ctf_integer(int, ret, ret) | |
982 | ) | |
b87700e3 AG |
983 | ) |
984 | ||
3bc29f0a | 985 | LTTNG_TRACEPOINT_EVENT(ext4_fallocate_exit, |
11af8f55 MD |
986 | TP_PROTO(struct inode *inode, loff_t offset, |
987 | unsigned int max_blocks, int ret), | |
988 | ||
989 | TP_ARGS(inode, offset, max_blocks, ret), | |
990 | ||
f127e61e MD |
991 | TP_FIELDS( |
992 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
993 | ctf_integer(ino_t, ino, inode->i_ino) | |
994 | ctf_integer(loff_t, pos, offset) | |
995 | ctf_integer(unsigned int, blocks, max_blocks) | |
996 | ctf_integer(int, ret, ret) | |
997 | ) | |
11af8f55 MD |
998 | ) |
999 | ||
5f4c791e | 1000 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,15,0)) |
11af8f55 | 1001 | |
3bc29f0a | 1002 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__fallocate_mode, |
b87700e3 AG |
1003 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode), |
1004 | ||
1005 | TP_ARGS(inode, offset, len, mode), | |
1006 | ||
f127e61e MD |
1007 | TP_FIELDS( |
1008 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1009 | ctf_integer(ino_t, ino, inode->i_ino) | |
1010 | ctf_integer(loff_t, pos, offset) | |
1011 | ctf_integer(loff_t, len, len) | |
1012 | ctf_integer(int, mode, mode) | |
1013 | ) | |
b87700e3 AG |
1014 | ) |
1015 | ||
3bc29f0a | 1016 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode, ext4_fallocate_enter, |
b87700e3 | 1017 | |
11af8f55 MD |
1018 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode), |
1019 | ||
1020 | TP_ARGS(inode, offset, len, mode) | |
1021 | ) | |
1022 | ||
3bc29f0a | 1023 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode, ext4_punch_hole, |
11af8f55 MD |
1024 | |
1025 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode), | |
1026 | ||
1027 | TP_ARGS(inode, offset, len, mode) | |
1028 | ) | |
1029 | ||
3bc29f0a | 1030 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode, ext4_zero_range, |
11af8f55 MD |
1031 | |
1032 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode), | |
1033 | ||
1034 | TP_ARGS(inode, offset, len, mode) | |
1035 | ) | |
1036 | ||
5f4c791e | 1037 | #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,15,0)) */ |
11af8f55 | 1038 | |
3bc29f0a | 1039 | LTTNG_TRACEPOINT_EVENT(ext4_fallocate_enter, |
11af8f55 MD |
1040 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode), |
1041 | ||
1042 | TP_ARGS(inode, offset, len, mode), | |
b87700e3 | 1043 | |
f127e61e MD |
1044 | TP_FIELDS( |
1045 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1046 | ctf_integer(ino_t, ino, inode->i_ino) | |
1047 | ctf_integer(loff_t, pos, offset) | |
1048 | ctf_integer(loff_t, len, len) | |
1049 | ctf_integer(int, mode, mode) | |
1050 | ) | |
b87700e3 AG |
1051 | ) |
1052 | ||
5f4c791e | 1053 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
c1b29b59 | 1054 | |
3bc29f0a | 1055 | LTTNG_TRACEPOINT_EVENT(ext4_punch_hole, |
c1b29b59 MD |
1056 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len), |
1057 | ||
1058 | TP_ARGS(inode, offset, len), | |
1059 | ||
f127e61e MD |
1060 | TP_FIELDS( |
1061 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1062 | ctf_integer(ino_t, ino, inode->i_ino) | |
1063 | ctf_integer(loff_t, pos, offset) | |
1064 | ctf_integer(loff_t, len, len) | |
1065 | ) | |
c1b29b59 MD |
1066 | ) |
1067 | ||
5f4c791e | 1068 | #endif /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) */ |
11af8f55 | 1069 | |
5f4c791e | 1070 | #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,15,0)) */ |
c1b29b59 | 1071 | |
3bc29f0a | 1072 | LTTNG_TRACEPOINT_EVENT(ext4_unlink_enter, |
b87700e3 AG |
1073 | TP_PROTO(struct inode *parent, struct dentry *dentry), |
1074 | ||
1075 | TP_ARGS(parent, dentry), | |
1076 | ||
f127e61e MD |
1077 | TP_FIELDS( |
1078 | ctf_integer(dev_t, dev, dentry->d_inode->i_sb->s_dev) | |
1079 | ctf_integer(ino_t, ino, dentry->d_inode->i_ino) | |
1080 | ctf_integer(ino_t, parent, parent->i_ino) | |
1081 | ctf_integer(loff_t, size, dentry->d_inode->i_size) | |
1082 | ) | |
b87700e3 AG |
1083 | ) |
1084 | ||
3bc29f0a | 1085 | LTTNG_TRACEPOINT_EVENT(ext4_unlink_exit, |
b87700e3 AG |
1086 | TP_PROTO(struct dentry *dentry, int ret), |
1087 | ||
1088 | TP_ARGS(dentry, ret), | |
1089 | ||
f127e61e MD |
1090 | TP_FIELDS( |
1091 | ctf_integer(dev_t, dev, dentry->d_inode->i_sb->s_dev) | |
1092 | ctf_integer(ino_t, ino, dentry->d_inode->i_ino) | |
1093 | ctf_integer(int, ret, ret) | |
1094 | ) | |
b87700e3 AG |
1095 | ) |
1096 | ||
3bc29f0a | 1097 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__truncate, |
b87700e3 AG |
1098 | TP_PROTO(struct inode *inode), |
1099 | ||
1100 | TP_ARGS(inode), | |
1101 | ||
f127e61e MD |
1102 | TP_FIELDS( |
1103 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1104 | ctf_integer(ino_t, ino, inode->i_ino) | |
1105 | ctf_integer(unsigned int, blocks, inode->i_blocks) | |
1106 | ) | |
b87700e3 AG |
1107 | ) |
1108 | ||
3bc29f0a | 1109 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__truncate, ext4_truncate_enter, |
b87700e3 AG |
1110 | |
1111 | TP_PROTO(struct inode *inode), | |
1112 | ||
1113 | TP_ARGS(inode) | |
1114 | ) | |
1115 | ||
3bc29f0a | 1116 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__truncate, ext4_truncate_exit, |
b87700e3 AG |
1117 | |
1118 | TP_PROTO(struct inode *inode), | |
1119 | ||
1120 | TP_ARGS(inode) | |
1121 | ) | |
1122 | ||
5f4c791e | 1123 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,2,0)) |
b87700e3 | 1124 | /* 'ux' is the uninitialized extent. */ |
3bc29f0a | 1125 | LTTNG_TRACEPOINT_EVENT(ext4_ext_convert_to_initialized_enter, |
b87700e3 AG |
1126 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, |
1127 | struct ext4_extent *ux), | |
1128 | ||
1129 | TP_ARGS(inode, map, ux), | |
1130 | ||
f127e61e MD |
1131 | TP_FIELDS( |
1132 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1133 | ctf_integer(ino_t, ino, inode->i_ino) | |
1134 | ctf_integer(ext4_lblk_t, m_lblk, map->m_lblk) | |
1135 | ctf_integer(unsigned, m_len, map->m_len) | |
1136 | ctf_integer(ext4_lblk_t, u_lblk, le32_to_cpu(ux->ee_block)) | |
1137 | ctf_integer(unsigned, u_len, ext4_ext_get_actual_len(ux)) | |
1138 | ctf_integer(ext4_fsblk_t, u_pblk, ext4_ext_pblock(ux)) | |
1139 | ) | |
b87700e3 AG |
1140 | ) |
1141 | ||
1142 | /* | |
1143 | * 'ux' is the uninitialized extent. | |
1144 | * 'ix' is the initialized extent to which blocks are transferred. | |
1145 | */ | |
3bc29f0a | 1146 | LTTNG_TRACEPOINT_EVENT(ext4_ext_convert_to_initialized_fastpath, |
b87700e3 AG |
1147 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, |
1148 | struct ext4_extent *ux, struct ext4_extent *ix), | |
1149 | ||
1150 | TP_ARGS(inode, map, ux, ix), | |
1151 | ||
f127e61e MD |
1152 | TP_FIELDS( |
1153 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1154 | ctf_integer(ino_t, ino, inode->i_ino) | |
1155 | ctf_integer(ext4_lblk_t, m_lblk, map->m_lblk) | |
1156 | ctf_integer(unsigned, m_len, map->m_len) | |
1157 | ctf_integer(ext4_lblk_t, u_lblk, le32_to_cpu(ux->ee_block)) | |
1158 | ctf_integer(unsigned, u_len, ext4_ext_get_actual_len(ux)) | |
1159 | ctf_integer(ext4_fsblk_t, u_pblk, ext4_ext_pblock(ux)) | |
1160 | ctf_integer(ext4_lblk_t, i_lblk, le32_to_cpu(ix->ee_block)) | |
1161 | ctf_integer(unsigned, i_len, ext4_ext_get_actual_len(ix)) | |
1162 | ctf_integer(ext4_fsblk_t, i_pblk, ext4_ext_pblock(ix)) | |
1163 | ) | |
b87700e3 AG |
1164 | ) |
1165 | #endif | |
1166 | ||
3bc29f0a | 1167 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_enter, |
b87700e3 AG |
1168 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1169 | unsigned int len, unsigned int flags), | |
1170 | ||
1171 | TP_ARGS(inode, lblk, len, flags), | |
1172 | ||
f127e61e MD |
1173 | TP_FIELDS( |
1174 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1175 | ctf_integer(ino_t, ino, inode->i_ino) | |
1176 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1177 | ctf_integer(unsigned int, len, len) | |
1178 | ctf_integer(unsigned int, flags, flags) | |
1179 | ) | |
b87700e3 AG |
1180 | ) |
1181 | ||
3bc29f0a | 1182 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_enter, ext4_ext_map_blocks_enter, |
b87700e3 AG |
1183 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1184 | unsigned len, unsigned flags), | |
1185 | ||
1186 | TP_ARGS(inode, lblk, len, flags) | |
1187 | ) | |
1188 | ||
3bc29f0a | 1189 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_enter, ext4_ind_map_blocks_enter, |
b87700e3 AG |
1190 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1191 | unsigned len, unsigned flags), | |
1192 | ||
1193 | TP_ARGS(inode, lblk, len, flags) | |
1194 | ) | |
1195 | ||
5f4c791e | 1196 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1197 | |
3bc29f0a | 1198 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit, |
00be8842 MD |
1199 | TP_PROTO(struct inode *inode, unsigned flags, struct ext4_map_blocks *map, |
1200 | int ret), | |
1201 | ||
1202 | TP_ARGS(inode, flags, map, ret), | |
1203 | ||
f127e61e MD |
1204 | TP_FIELDS( |
1205 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1206 | ctf_integer(ino_t, ino, inode->i_ino) | |
1207 | ctf_integer(unsigned int, flags, flags) | |
1208 | ctf_integer(ext4_fsblk_t, pblk, map->m_pblk) | |
1209 | ctf_integer(ext4_lblk_t, lblk, map->m_lblk) | |
1210 | ctf_integer(unsigned int, len, map->m_len) | |
1211 | ctf_integer(unsigned int, mflags, map->m_flags) | |
1212 | ctf_integer(int, ret, ret) | |
1213 | ) | |
00be8842 MD |
1214 | ) |
1215 | ||
3bc29f0a | 1216 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ext_map_blocks_exit, |
00be8842 MD |
1217 | TP_PROTO(struct inode *inode, unsigned flags, |
1218 | struct ext4_map_blocks *map, int ret), | |
1219 | ||
1220 | TP_ARGS(inode, flags, map, ret) | |
1221 | ) | |
1222 | ||
3bc29f0a | 1223 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ind_map_blocks_exit, |
00be8842 MD |
1224 | TP_PROTO(struct inode *inode, unsigned flags, |
1225 | struct ext4_map_blocks *map, int ret), | |
1226 | ||
1227 | TP_ARGS(inode, flags, map, ret) | |
1228 | ) | |
1229 | ||
5f4c791e | 1230 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) |
162774b4 | 1231 | |
3bc29f0a | 1232 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit, |
162774b4 MD |
1233 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int ret), |
1234 | ||
1235 | TP_ARGS(inode, map, ret), | |
1236 | ||
f127e61e MD |
1237 | TP_FIELDS( |
1238 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1239 | ctf_integer(ino_t, ino, inode->i_ino) | |
f127e61e MD |
1240 | ctf_integer(ext4_fsblk_t, pblk, map->m_pblk) |
1241 | ctf_integer(ext4_lblk_t, lblk, map->m_lblk) | |
1242 | ctf_integer(unsigned int, len, map->m_len) | |
1243 | ctf_integer(unsigned int, mflags, map->m_flags) | |
1244 | ctf_integer(int, ret, ret) | |
1245 | ) | |
162774b4 MD |
1246 | ) |
1247 | ||
3bc29f0a | 1248 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ext_map_blocks_exit, |
162774b4 MD |
1249 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int ret), |
1250 | ||
1251 | TP_ARGS(inode, map, ret) | |
1252 | ) | |
1253 | ||
3bc29f0a | 1254 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ind_map_blocks_exit, |
162774b4 MD |
1255 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int ret), |
1256 | ||
1257 | TP_ARGS(inode, map, ret) | |
1258 | ) | |
1259 | ||
5f4c791e | 1260 | #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
162774b4 | 1261 | |
3bc29f0a | 1262 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit, |
b87700e3 AG |
1263 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1264 | ext4_fsblk_t pblk, unsigned int len, int ret), | |
1265 | ||
1266 | TP_ARGS(inode, lblk, pblk, len, ret), | |
1267 | ||
f127e61e MD |
1268 | TP_FIELDS( |
1269 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1270 | ctf_integer(ino_t, ino, inode->i_ino) | |
1271 | ctf_integer(ext4_fsblk_t, pblk, pblk) | |
1272 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1273 | ctf_integer(unsigned int, len, len) | |
1274 | ctf_integer(int, ret, ret) | |
1275 | ) | |
b87700e3 AG |
1276 | ) |
1277 | ||
3bc29f0a | 1278 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ext_map_blocks_exit, |
b87700e3 AG |
1279 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1280 | ext4_fsblk_t pblk, unsigned len, int ret), | |
1281 | ||
1282 | TP_ARGS(inode, lblk, pblk, len, ret) | |
1283 | ) | |
1284 | ||
3bc29f0a | 1285 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ind_map_blocks_exit, |
b87700e3 AG |
1286 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1287 | ext4_fsblk_t pblk, unsigned len, int ret), | |
1288 | ||
1289 | TP_ARGS(inode, lblk, pblk, len, ret) | |
1290 | ) | |
1291 | ||
5f4c791e | 1292 | #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
162774b4 | 1293 | |
3bc29f0a | 1294 | LTTNG_TRACEPOINT_EVENT(ext4_ext_load_extent, |
b87700e3 AG |
1295 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk), |
1296 | ||
1297 | TP_ARGS(inode, lblk, pblk), | |
1298 | ||
f127e61e MD |
1299 | TP_FIELDS( |
1300 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1301 | ctf_integer(ino_t, ino, inode->i_ino) | |
1302 | ctf_integer(ext4_fsblk_t, pblk, pblk) | |
1303 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1304 | ) | |
b87700e3 AG |
1305 | ) |
1306 | ||
5f4c791e | 1307 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,10,0)) |
e68322f3 MJ |
1308 | LTTNG_TRACEPOINT_EVENT(ext4_load_inode, |
1309 | TP_PROTO(struct super_block *sb, unsigned long ino), | |
1310 | ||
1311 | TP_ARGS(sb, ino), | |
1312 | ||
1313 | TP_FIELDS( | |
1314 | ctf_integer(dev_t, dev, sb->s_dev) | |
1315 | ctf_integer(ino_t, ino, ino) | |
1316 | ) | |
1317 | ) | |
1318 | #else | |
3bc29f0a | 1319 | LTTNG_TRACEPOINT_EVENT(ext4_load_inode, |
b87700e3 AG |
1320 | TP_PROTO(struct inode *inode), |
1321 | ||
1322 | TP_ARGS(inode), | |
1323 | ||
f127e61e MD |
1324 | TP_FIELDS( |
1325 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1326 | ctf_integer(ino_t, ino, inode->i_ino) | |
1327 | ) | |
b87700e3 | 1328 | ) |
e68322f3 | 1329 | #endif |
b87700e3 | 1330 | |
5f4c791e | 1331 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,5,0)) |
bb0eb66d MJ |
1332 | |
1333 | LTTNG_TRACEPOINT_EVENT(ext4_journal_start, | |
1334 | TP_PROTO(struct super_block *sb, int blocks, int rsv_blocks, | |
1335 | int revoke_creds, unsigned long IP), | |
1336 | ||
1337 | TP_ARGS(sb, blocks, rsv_blocks, revoke_creds, IP), | |
1338 | ||
1339 | TP_FIELDS( | |
1340 | ctf_integer(dev_t, dev, sb->s_dev) | |
2c054599 | 1341 | ctf_integer_hex(unsigned long, ip, IP) |
bb0eb66d MJ |
1342 | ctf_integer(int, blocks, blocks) |
1343 | ctf_integer(int, rsv_blocks, rsv_blocks) | |
1344 | ctf_integer(int, revoke_creds, revoke_creds) | |
1345 | ) | |
1346 | ) | |
1347 | ||
1348 | LTTNG_TRACEPOINT_EVENT(ext4_journal_start_reserved, | |
1349 | TP_PROTO(struct super_block *sb, int blocks, unsigned long IP), | |
1350 | ||
1351 | TP_ARGS(sb, blocks, IP), | |
1352 | ||
1353 | TP_FIELDS( | |
1354 | ctf_integer(dev_t, dev, sb->s_dev) | |
2c054599 | 1355 | ctf_integer_hex(unsigned long, ip, IP) |
bb0eb66d MJ |
1356 | ctf_integer(int, blocks, blocks) |
1357 | ) | |
1358 | ) | |
1359 | ||
5f4c791e | 1360 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1361 | |
3bc29f0a | 1362 | LTTNG_TRACEPOINT_EVENT(ext4_journal_start, |
00be8842 MD |
1363 | TP_PROTO(struct super_block *sb, int blocks, int rsv_blocks, |
1364 | unsigned long IP), | |
1365 | ||
1366 | TP_ARGS(sb, blocks, rsv_blocks, IP), | |
1367 | ||
f127e61e MD |
1368 | TP_FIELDS( |
1369 | ctf_integer(dev_t, dev, sb->s_dev) | |
2c054599 | 1370 | ctf_integer_hex(unsigned long, ip, IP) |
f127e61e MD |
1371 | ctf_integer(int, blocks, blocks) |
1372 | ctf_integer(int, rsv_blocks, rsv_blocks) | |
1373 | ) | |
00be8842 MD |
1374 | ) |
1375 | ||
3bc29f0a | 1376 | LTTNG_TRACEPOINT_EVENT(ext4_journal_start_reserved, |
00be8842 MD |
1377 | TP_PROTO(struct super_block *sb, int blocks, unsigned long IP), |
1378 | ||
1379 | TP_ARGS(sb, blocks, IP), | |
1380 | ||
f127e61e MD |
1381 | TP_FIELDS( |
1382 | ctf_integer(dev_t, dev, sb->s_dev) | |
2c054599 | 1383 | ctf_integer_hex(unsigned long, ip, IP) |
f127e61e MD |
1384 | ctf_integer(int, blocks, blocks) |
1385 | ) | |
00be8842 MD |
1386 | ) |
1387 | ||
5f4c791e | 1388 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,1,0)) |
00be8842 | 1389 | |
3bc29f0a | 1390 | LTTNG_TRACEPOINT_EVENT(ext4_journal_start, |
b87700e3 AG |
1391 | TP_PROTO(struct super_block *sb, int nblocks, unsigned long IP), |
1392 | ||
1393 | TP_ARGS(sb, nblocks, IP), | |
1394 | ||
f127e61e MD |
1395 | TP_FIELDS( |
1396 | ctf_integer(dev_t, dev, sb->s_dev) | |
2c054599 | 1397 | ctf_integer_hex(unsigned long, ip, IP) |
f127e61e MD |
1398 | ctf_integer(int, nblocks, nblocks) |
1399 | ) | |
b87700e3 AG |
1400 | ) |
1401 | ||
3bc29f0a | 1402 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__trim, |
b87700e3 AG |
1403 | TP_PROTO(struct super_block *sb, |
1404 | ext4_group_t group, | |
1405 | ext4_grpblk_t start, | |
1406 | ext4_grpblk_t len), | |
1407 | ||
1408 | TP_ARGS(sb, group, start, len), | |
1409 | ||
f127e61e MD |
1410 | TP_FIELDS( |
1411 | ctf_integer(int, dev_major, MAJOR(sb->s_dev)) | |
1412 | ctf_integer(int, dev_minor, MINOR(sb->s_dev)) | |
1413 | ctf_integer(__u32, group, group) | |
1414 | ctf_integer(int, start, start) | |
1415 | ctf_integer(int, len, len) | |
1416 | ) | |
b87700e3 AG |
1417 | ) |
1418 | ||
3bc29f0a | 1419 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__trim, ext4_trim_extent, |
b87700e3 AG |
1420 | |
1421 | TP_PROTO(struct super_block *sb, | |
1422 | ext4_group_t group, | |
1423 | ext4_grpblk_t start, | |
1424 | ext4_grpblk_t len), | |
1425 | ||
1426 | TP_ARGS(sb, group, start, len) | |
1427 | ) | |
1428 | ||
3bc29f0a | 1429 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__trim, ext4_trim_all_free, |
b87700e3 AG |
1430 | |
1431 | TP_PROTO(struct super_block *sb, | |
1432 | ext4_group_t group, | |
1433 | ext4_grpblk_t start, | |
1434 | ext4_grpblk_t len), | |
1435 | ||
1436 | TP_ARGS(sb, group, start, len) | |
1437 | ) | |
1438 | #endif | |
1439 | ||
5f4c791e | 1440 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,2,0)) |
162774b4 | 1441 | |
3bc29f0a | 1442 | LTTNG_TRACEPOINT_EVENT(ext4_ext_handle_uninitialized_extents, |
5f4c791e | 1443 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) |
162774b4 MD |
1444 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int flags, |
1445 | unsigned int allocated, ext4_fsblk_t newblock), | |
1446 | ||
1447 | TP_ARGS(inode, map, flags, allocated, newblock), | |
5f4c791e | 1448 | #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
b87700e3 AG |
1449 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, |
1450 | unsigned int allocated, ext4_fsblk_t newblock), | |
1451 | ||
1452 | TP_ARGS(inode, map, allocated, newblock), | |
5f4c791e | 1453 | #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
b87700e3 | 1454 | |
f127e61e MD |
1455 | TP_FIELDS( |
1456 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1457 | ctf_integer(ino_t, ino, inode->i_ino) | |
5f4c791e | 1458 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) |
f127e61e | 1459 | ctf_integer(int, flags, flags) |
5f4c791e | 1460 | #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
f127e61e | 1461 | ctf_integer(int, flags, map->m_flags) |
5f4c791e | 1462 | #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
f127e61e MD |
1463 | ctf_integer(ext4_lblk_t, lblk, map->m_lblk) |
1464 | ctf_integer(ext4_fsblk_t, pblk, map->m_pblk) | |
1465 | ctf_integer(unsigned int, len, map->m_len) | |
1466 | ctf_integer(unsigned int, allocated, allocated) | |
1467 | ctf_integer(ext4_fsblk_t, newblk, newblock) | |
1468 | ) | |
b87700e3 AG |
1469 | ) |
1470 | ||
3bc29f0a | 1471 | LTTNG_TRACEPOINT_EVENT(ext4_get_implied_cluster_alloc_exit, |
b87700e3 AG |
1472 | TP_PROTO(struct super_block *sb, struct ext4_map_blocks *map, int ret), |
1473 | ||
1474 | TP_ARGS(sb, map, ret), | |
1475 | ||
f127e61e MD |
1476 | TP_FIELDS( |
1477 | ctf_integer(dev_t, dev, sb->s_dev) | |
1478 | ctf_integer(unsigned int, flags, map->m_flags) | |
1479 | ctf_integer(ext4_lblk_t, lblk, map->m_lblk) | |
1480 | ctf_integer(ext4_fsblk_t, pblk, map->m_pblk) | |
1481 | ctf_integer(unsigned int, len, map->m_len) | |
1482 | ctf_integer(int, ret, ret) | |
1483 | ) | |
b87700e3 AG |
1484 | ) |
1485 | ||
3bc29f0a | 1486 | LTTNG_TRACEPOINT_EVENT(ext4_ext_put_in_cache, |
b87700e3 AG |
1487 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, unsigned int len, |
1488 | ext4_fsblk_t start), | |
1489 | ||
1490 | TP_ARGS(inode, lblk, len, start), | |
1491 | ||
f127e61e MD |
1492 | TP_FIELDS( |
1493 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1494 | ctf_integer(ino_t, ino, inode->i_ino) | |
1495 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1496 | ctf_integer(unsigned int, len, len) | |
1497 | ctf_integer(ext4_fsblk_t, start, start) | |
1498 | ) | |
b87700e3 AG |
1499 | ) |
1500 | ||
3bc29f0a | 1501 | LTTNG_TRACEPOINT_EVENT(ext4_ext_in_cache, |
b87700e3 AG |
1502 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, int ret), |
1503 | ||
1504 | TP_ARGS(inode, lblk, ret), | |
1505 | ||
f127e61e MD |
1506 | TP_FIELDS( |
1507 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1508 | ctf_integer(ino_t, ino, inode->i_ino) | |
1509 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1510 | ctf_integer(int, ret, ret) | |
1511 | ) | |
b87700e3 AG |
1512 | ) |
1513 | ||
3bc29f0a | 1514 | LTTNG_TRACEPOINT_EVENT(ext4_find_delalloc_range, |
b87700e3 AG |
1515 | TP_PROTO(struct inode *inode, ext4_lblk_t from, ext4_lblk_t to, |
1516 | int reverse, int found, ext4_lblk_t found_blk), | |
1517 | ||
1518 | TP_ARGS(inode, from, to, reverse, found, found_blk), | |
1519 | ||
f127e61e MD |
1520 | TP_FIELDS( |
1521 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1522 | ctf_integer(ino_t, ino, inode->i_ino) | |
1523 | ctf_integer(ext4_lblk_t, from, from) | |
1524 | ctf_integer(ext4_lblk_t, to, to) | |
1525 | ctf_integer(int, reverse, reverse) | |
1526 | ctf_integer(int, found, found) | |
1527 | ctf_integer(ext4_lblk_t, found_blk, found_blk) | |
1528 | ) | |
b87700e3 AG |
1529 | ) |
1530 | ||
3bc29f0a | 1531 | LTTNG_TRACEPOINT_EVENT(ext4_get_reserved_cluster_alloc, |
b87700e3 AG |
1532 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, unsigned int len), |
1533 | ||
1534 | TP_ARGS(inode, lblk, len), | |
1535 | ||
f127e61e MD |
1536 | TP_FIELDS( |
1537 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1538 | ctf_integer(ino_t, ino, inode->i_ino) | |
1539 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1540 | ctf_integer(unsigned int, len, len) | |
1541 | ) | |
b87700e3 AG |
1542 | ) |
1543 | ||
3bc29f0a | 1544 | LTTNG_TRACEPOINT_EVENT(ext4_ext_show_extent, |
b87700e3 AG |
1545 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk, |
1546 | unsigned short len), | |
1547 | ||
1548 | TP_ARGS(inode, lblk, pblk, len), | |
1549 | ||
f127e61e MD |
1550 | TP_FIELDS( |
1551 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1552 | ctf_integer(ino_t, ino, inode->i_ino) | |
1553 | ctf_integer(ext4_fsblk_t, pblk, pblk) | |
1554 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1555 | ctf_integer(unsigned short, len, len) | |
1556 | ) | |
b87700e3 AG |
1557 | ) |
1558 | ||
5f4c791e | 1559 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \ |
3395f24e | 1560 | LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0)) |
85957268 MJ |
1561 | |
1562 | LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks, | |
1563 | TP_PROTO(struct inode *inode, struct ext4_extent *ex, | |
1564 | ext4_lblk_t from, ext4_fsblk_t to, | |
1565 | struct partial_cluster *pc), | |
1566 | ||
1567 | TP_ARGS(inode, ex, from, to, pc), | |
1568 | ||
1569 | TP_FIELDS( | |
1570 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1571 | ctf_integer(ino_t, ino, inode->i_ino) | |
1572 | ctf_integer(ext4_lblk_t, from, from) | |
1573 | ctf_integer(ext4_lblk_t, to, to) | |
1574 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1575 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1576 | ctf_integer(unsigned short, ee_len, ext4_ext_get_actual_len(ex)) | |
1577 | ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu) | |
1578 | ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk) | |
1579 | ctf_integer(int, pc_state, pc->state) | |
1580 | ) | |
1581 | ) | |
1582 | ||
5f4c791e | 1583 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1584 | |
3bc29f0a | 1585 | LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks, |
00be8842 MD |
1586 | TP_PROTO(struct inode *inode, struct ext4_extent *ex, |
1587 | ext4_lblk_t from, ext4_fsblk_t to, | |
1588 | long long partial_cluster), | |
1589 | ||
1590 | TP_ARGS(inode, ex, from, to, partial_cluster), | |
1591 | ||
f127e61e MD |
1592 | TP_FIELDS( |
1593 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1594 | ctf_integer(ino_t, ino, inode->i_ino) | |
1595 | ctf_integer(ext4_lblk_t, from, from) | |
1596 | ctf_integer(ext4_lblk_t, to, to) | |
1597 | ctf_integer(long long, partial, partial_cluster) | |
1598 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1599 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1600 | ctf_integer(unsigned short, ee_len, ext4_ext_get_actual_len(ex)) | |
1601 | ) | |
00be8842 MD |
1602 | ) |
1603 | ||
1604 | #else | |
1605 | ||
3bc29f0a | 1606 | LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks, |
b87700e3 AG |
1607 | TP_PROTO(struct inode *inode, struct ext4_extent *ex, |
1608 | ext4_lblk_t from, ext4_fsblk_t to, | |
1609 | ext4_fsblk_t partial_cluster), | |
1610 | ||
1611 | TP_ARGS(inode, ex, from, to, partial_cluster), | |
1612 | ||
f127e61e MD |
1613 | TP_FIELDS( |
1614 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1615 | ctf_integer(ino_t, ino, inode->i_ino) | |
1616 | ctf_integer(ext4_lblk_t, from, from) | |
1617 | ctf_integer(ext4_lblk_t, to, to) | |
1618 | ctf_integer(ext4_fsblk_t, partial, partial_cluster) | |
1619 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1620 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1621 | ctf_integer(unsigned short, ee_len, ext4_ext_get_actual_len(ex)) | |
1622 | ) | |
b87700e3 AG |
1623 | ) |
1624 | ||
00be8842 MD |
1625 | #endif |
1626 | ||
5f4c791e | 1627 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \ |
3395f24e | 1628 | LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0)) |
85957268 MJ |
1629 | |
1630 | LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf, | |
1631 | TP_PROTO(struct inode *inode, ext4_lblk_t start, | |
1632 | struct ext4_extent *ex, | |
1633 | struct partial_cluster *pc), | |
1634 | ||
1635 | TP_ARGS(inode, start, ex, pc), | |
1636 | ||
1637 | TP_FIELDS( | |
1638 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1639 | ctf_integer(ino_t, ino, inode->i_ino) | |
1640 | ctf_integer(ext4_lblk_t, start, start) | |
1641 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1642 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1643 | ctf_integer(short, ee_len, ext4_ext_get_actual_len(ex)) | |
1644 | ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu) | |
1645 | ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk) | |
1646 | ctf_integer(int, pc_state, pc->state) | |
1647 | ) | |
1648 | ) | |
1649 | ||
5f4c791e | 1650 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1651 | |
3bc29f0a | 1652 | LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf, |
00be8842 MD |
1653 | TP_PROTO(struct inode *inode, ext4_lblk_t start, |
1654 | struct ext4_extent *ex, | |
1655 | long long partial_cluster), | |
1656 | ||
1657 | TP_ARGS(inode, start, ex, partial_cluster), | |
1658 | ||
f127e61e MD |
1659 | TP_FIELDS( |
1660 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1661 | ctf_integer(ino_t, ino, inode->i_ino) | |
1662 | ctf_integer(long long, partial, partial_cluster) | |
1663 | ctf_integer(ext4_lblk_t, start, start) | |
1664 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1665 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1666 | ctf_integer(short, ee_len, ext4_ext_get_actual_len(ex)) | |
1667 | ) | |
00be8842 MD |
1668 | ) |
1669 | ||
1670 | #else | |
1671 | ||
3bc29f0a | 1672 | LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf, |
b87700e3 AG |
1673 | TP_PROTO(struct inode *inode, ext4_lblk_t start, |
1674 | struct ext4_extent *ex, ext4_fsblk_t partial_cluster), | |
1675 | ||
1676 | TP_ARGS(inode, start, ex, partial_cluster), | |
1677 | ||
f127e61e MD |
1678 | TP_FIELDS( |
1679 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1680 | ctf_integer(ino_t, ino, inode->i_ino) | |
1681 | ctf_integer(long long, partial, partial_cluster) | |
1682 | ctf_integer(ext4_lblk_t, start, start) | |
1683 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1684 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1685 | ctf_integer(short, ee_len, ext4_ext_get_actual_len(ex)) | |
1686 | ) | |
b87700e3 AG |
1687 | ) |
1688 | ||
00be8842 MD |
1689 | #endif |
1690 | ||
3bc29f0a | 1691 | LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_idx, |
b87700e3 AG |
1692 | TP_PROTO(struct inode *inode, ext4_fsblk_t pblk), |
1693 | ||
1694 | TP_ARGS(inode, pblk), | |
1695 | ||
f127e61e MD |
1696 | TP_FIELDS( |
1697 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1698 | ctf_integer(ino_t, ino, inode->i_ino) | |
1699 | ctf_integer(ext4_fsblk_t, pblk, pblk) | |
1700 | ) | |
b87700e3 AG |
1701 | ) |
1702 | ||
5f4c791e | 1703 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1704 | |
3bc29f0a | 1705 | LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space, |
00be8842 MD |
1706 | TP_PROTO(struct inode *inode, ext4_lblk_t start, |
1707 | ext4_lblk_t end, int depth), | |
1708 | ||
1709 | TP_ARGS(inode, start, end, depth), | |
1710 | ||
f127e61e MD |
1711 | TP_FIELDS( |
1712 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1713 | ctf_integer(ino_t, ino, inode->i_ino) | |
1714 | ctf_integer(ext4_lblk_t, start, start) | |
1715 | ctf_integer(ext4_lblk_t, end, end) | |
1716 | ctf_integer(int, depth, depth) | |
1717 | ) | |
00be8842 MD |
1718 | ) |
1719 | ||
1720 | #else | |
1721 | ||
3bc29f0a | 1722 | LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space, |
b87700e3 AG |
1723 | TP_PROTO(struct inode *inode, ext4_lblk_t start, int depth), |
1724 | ||
1725 | TP_ARGS(inode, start, depth), | |
1726 | ||
f127e61e MD |
1727 | TP_FIELDS( |
1728 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1729 | ctf_integer(ino_t, ino, inode->i_ino) | |
1730 | ctf_integer(ext4_lblk_t, start, start) | |
1731 | ctf_integer(int, depth, depth) | |
1732 | ) | |
b87700e3 AG |
1733 | ) |
1734 | ||
00be8842 MD |
1735 | #endif |
1736 | ||
5f4c791e | 1737 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \ |
3395f24e | 1738 | LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0)) |
85957268 MJ |
1739 | |
1740 | LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done, | |
1741 | TP_PROTO(struct inode *inode, ext4_lblk_t start, ext4_lblk_t end, | |
1742 | int depth, struct partial_cluster *pc, __le16 eh_entries), | |
1743 | ||
1744 | TP_ARGS(inode, start, end, depth, pc, eh_entries), | |
1745 | ||
1746 | TP_FIELDS( | |
1747 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1748 | ctf_integer(ino_t, ino, inode->i_ino) | |
1749 | ctf_integer(ext4_lblk_t, start, start) | |
1750 | ctf_integer(ext4_lblk_t, end, end) | |
1751 | ctf_integer(int, depth, depth) | |
1752 | ctf_integer(unsigned short, eh_entries, le16_to_cpu(eh_entries)) | |
1753 | ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu) | |
1754 | ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk) | |
1755 | ctf_integer(int, pc_state, pc->state) | |
1756 | ) | |
1757 | ) | |
1758 | ||
5f4c791e | 1759 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1760 | |
3bc29f0a | 1761 | LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done, |
00be8842 MD |
1762 | TP_PROTO(struct inode *inode, ext4_lblk_t start, ext4_lblk_t end, |
1763 | int depth, long long partial, __le16 eh_entries), | |
1764 | ||
1765 | TP_ARGS(inode, start, end, depth, partial, eh_entries), | |
1766 | ||
f127e61e MD |
1767 | TP_FIELDS( |
1768 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1769 | ctf_integer(ino_t, ino, inode->i_ino) | |
1770 | ctf_integer(ext4_lblk_t, start, start) | |
1771 | ctf_integer(ext4_lblk_t, end, end) | |
1772 | ctf_integer(int, depth, depth) | |
1773 | ctf_integer(long long, partial, partial) | |
1774 | ctf_integer(unsigned short, eh_entries, le16_to_cpu(eh_entries)) | |
1775 | ) | |
00be8842 MD |
1776 | ) |
1777 | ||
1778 | #else | |
1779 | ||
3bc29f0a | 1780 | LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done, |
b87700e3 AG |
1781 | TP_PROTO(struct inode *inode, ext4_lblk_t start, int depth, |
1782 | ext4_lblk_t partial, unsigned short eh_entries), | |
1783 | ||
1784 | TP_ARGS(inode, start, depth, partial, eh_entries), | |
1785 | ||
f127e61e MD |
1786 | TP_FIELDS( |
1787 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1788 | ctf_integer(ino_t, ino, inode->i_ino) | |
1789 | ctf_integer(ext4_lblk_t, start, start) | |
1790 | ctf_integer(int, depth, depth) | |
1791 | ctf_integer(ext4_lblk_t, partial, partial) | |
1792 | ctf_integer(unsigned short, eh_entries, eh_entries) | |
1793 | ) | |
b87700e3 | 1794 | ) |
00be8842 MD |
1795 | |
1796 | #endif | |
1797 | ||
1798 | #endif | |
1799 | ||
5f4c791e | 1800 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,12,0)) |
39aee4a0 | 1801 | |
3bc29f0a | 1802 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__es_extent, |
39aee4a0 MD |
1803 | TP_PROTO(struct inode *inode, struct extent_status *es), |
1804 | ||
1805 | TP_ARGS(inode, es), | |
1806 | ||
f127e61e MD |
1807 | TP_FIELDS( |
1808 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1809 | ctf_integer(ino_t, ino, inode->i_ino) | |
1810 | ctf_integer(ext4_lblk_t, lblk, es->es_lblk) | |
1811 | ctf_integer(ext4_lblk_t, len, es->es_len) | |
1812 | ctf_integer(ext4_fsblk_t, pblk, ext4_es_pblock(es)) | |
1813 | ctf_integer(char, status, ext4_es_status(es)) | |
1814 | ) | |
39aee4a0 MD |
1815 | ) |
1816 | ||
3bc29f0a | 1817 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__es_extent, ext4_es_insert_extent, |
39aee4a0 MD |
1818 | TP_PROTO(struct inode *inode, struct extent_status *es), |
1819 | ||
1820 | TP_ARGS(inode, es) | |
1821 | ) | |
1822 | ||
3bc29f0a | 1823 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__es_extent, ext4_es_cache_extent, |
39aee4a0 MD |
1824 | TP_PROTO(struct inode *inode, struct extent_status *es), |
1825 | ||
1826 | TP_ARGS(inode, es) | |
1827 | ) | |
1828 | ||
5f4c791e | 1829 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1830 | |
3bc29f0a | 1831 | LTTNG_TRACEPOINT_EVENT(ext4_es_insert_extent, |
00be8842 MD |
1832 | TP_PROTO(struct inode *inode, struct extent_status *es), |
1833 | ||
1834 | TP_ARGS(inode, es), | |
1835 | ||
f127e61e MD |
1836 | TP_FIELDS( |
1837 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1838 | ctf_integer(ino_t, ino, inode->i_ino) | |
1839 | ctf_integer(ext4_lblk_t, lblk, es->es_lblk) | |
1840 | ctf_integer(ext4_lblk_t, len, es->es_len) | |
1841 | ctf_integer(ext4_fsblk_t, pblk, ext4_es_pblock(es)) | |
1842 | ctf_integer(char, status, ext4_es_status(es) >> 60) | |
1843 | ) | |
00be8842 MD |
1844 | ) |
1845 | ||
3bc29f0a | 1846 | LTTNG_TRACEPOINT_EVENT(ext4_es_remove_extent, |
00be8842 MD |
1847 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_lblk_t len), |
1848 | ||
1849 | TP_ARGS(inode, lblk, len), | |
1850 | ||
f127e61e MD |
1851 | TP_FIELDS( |
1852 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1853 | ctf_integer(ino_t, ino, inode->i_ino) | |
1854 | ctf_integer(loff_t, lblk, lblk) | |
1855 | ctf_integer(loff_t, len, len) | |
1856 | ) | |
00be8842 MD |
1857 | ) |
1858 | ||
3bc29f0a | 1859 | LTTNG_TRACEPOINT_EVENT(ext4_es_find_delayed_extent_range_enter, |
00be8842 MD |
1860 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk), |
1861 | ||
1862 | TP_ARGS(inode, lblk), | |
1863 | ||
f127e61e MD |
1864 | TP_FIELDS( |
1865 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1866 | ctf_integer(ino_t, ino, inode->i_ino) | |
1867 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1868 | ) | |
00be8842 MD |
1869 | ) |
1870 | ||
3bc29f0a | 1871 | LTTNG_TRACEPOINT_EVENT(ext4_es_find_delayed_extent_range_exit, |
00be8842 MD |
1872 | TP_PROTO(struct inode *inode, struct extent_status *es), |
1873 | ||
1874 | TP_ARGS(inode, es), | |
1875 | ||
f127e61e MD |
1876 | TP_FIELDS( |
1877 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1878 | ctf_integer(ino_t, ino, inode->i_ino) | |
1879 | ctf_integer(ext4_lblk_t, lblk, es->es_lblk) | |
1880 | ctf_integer(ext4_lblk_t, len, es->es_len) | |
1881 | ctf_integer(ext4_fsblk_t, pblk, ext4_es_pblock(es)) | |
1882 | ctf_integer(char, status, ext4_es_status(es) >> 60) | |
1883 | ) | |
00be8842 MD |
1884 | ) |
1885 | ||
3bc29f0a | 1886 | LTTNG_TRACEPOINT_EVENT(ext4_es_lookup_extent_enter, |
00be8842 MD |
1887 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk), |
1888 | ||
1889 | TP_ARGS(inode, lblk), | |
1890 | ||
f127e61e MD |
1891 | TP_FIELDS( |
1892 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1893 | ctf_integer(ino_t, ino, inode->i_ino) | |
1894 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1895 | ) | |
00be8842 MD |
1896 | ) |
1897 | ||
3bc29f0a | 1898 | LTTNG_TRACEPOINT_EVENT(ext4_es_lookup_extent_exit, |
00be8842 MD |
1899 | TP_PROTO(struct inode *inode, struct extent_status *es, |
1900 | int found), | |
1901 | ||
1902 | TP_ARGS(inode, es, found), | |
1903 | ||
f127e61e MD |
1904 | TP_FIELDS( |
1905 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1906 | ctf_integer(ino_t, ino, inode->i_ino) | |
1907 | ctf_integer(ext4_lblk_t, lblk, es->es_lblk) | |
1908 | ctf_integer(ext4_lblk_t, len, es->es_len) | |
1909 | ctf_integer(ext4_fsblk_t, pblk, ext4_es_pblock(es)) | |
1910 | ctf_integer(char, status, ext4_es_status(es) >> 60) | |
1911 | ctf_integer(int, found, found) | |
1912 | ) | |
00be8842 MD |
1913 | ) |
1914 | ||
3bc29f0a | 1915 | LTTNG_TRACEPOINT_EVENT(ext4_es_shrink_enter, |
00be8842 MD |
1916 | TP_PROTO(struct super_block *sb, int nr_to_scan, int cache_cnt), |
1917 | ||
1918 | TP_ARGS(sb, nr_to_scan, cache_cnt), | |
1919 | ||
f127e61e MD |
1920 | TP_FIELDS( |
1921 | ctf_integer(dev_t, dev, sb->s_dev) | |
1922 | ctf_integer(int, nr_to_scan, nr_to_scan) | |
1923 | ctf_integer(int, cache_cnt, cache_cnt) | |
1924 | ) | |
00be8842 MD |
1925 | ) |
1926 | ||
3bc29f0a | 1927 | LTTNG_TRACEPOINT_EVENT(ext4_es_shrink_exit, |
00be8842 MD |
1928 | TP_PROTO(struct super_block *sb, int shrunk_nr, int cache_cnt), |
1929 | ||
1930 | TP_ARGS(sb, shrunk_nr, cache_cnt), | |
1931 | ||
f127e61e MD |
1932 | TP_FIELDS( |
1933 | ctf_integer(dev_t, dev, sb->s_dev) | |
1934 | ctf_integer(int, shrunk_nr, shrunk_nr) | |
1935 | ctf_integer(int, cache_cnt, cache_cnt) | |
1936 | ) | |
00be8842 MD |
1937 | ) |
1938 | ||
b87700e3 AG |
1939 | #endif |
1940 | ||
5f4c791e | 1941 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,10,0)) |
e68322f3 MJ |
1942 | LTTNG_TRACEPOINT_EVENT(ext4_fc_replay_scan, |
1943 | TP_PROTO(struct super_block *sb, int error, int off), | |
1944 | ||
1945 | TP_ARGS(sb, error, off), | |
1946 | ||
1947 | TP_FIELDS( | |
1948 | ctf_integer(dev_t, dev, sb->s_dev) | |
1949 | ctf_integer(int, error, error) | |
1950 | ctf_integer(int, off, off) | |
1951 | ) | |
1952 | ) | |
1953 | ||
1954 | LTTNG_TRACEPOINT_EVENT(ext4_fc_replay, | |
1955 | TP_PROTO(struct super_block *sb, int tag, int ino, int priv1, int priv2), | |
1956 | ||
1957 | TP_ARGS(sb, tag, ino, priv1, priv2), | |
1958 | ||
1959 | TP_FIELDS( | |
1960 | ctf_integer(dev_t, dev, sb->s_dev) | |
1961 | ctf_integer(int, tag, tag) | |
1962 | ctf_integer(int, ino, ino) | |
1963 | ctf_integer(int, priv1, priv1) | |
1964 | ctf_integer(int, priv2, priv2) | |
1965 | ) | |
1966 | ) | |
1967 | #endif | |
1968 | ||
3bc29f0a | 1969 | #endif /* LTTNG_TRACE_EXT4_H */ |
b87700e3 AG |
1970 | |
1971 | /* This part must be outside protection */ | |
3b4aafcb | 1972 | #include <lttng/define_trace.h> |