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 | |
d988f04a KS |
493 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,8,0)) |
494 | LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations, | |
495 | TP_PROTO(struct inode *inode, unsigned int len), | |
496 | ||
497 | TP_ARGS(inode, len), | |
498 | ||
499 | TP_FIELDS( | |
500 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
501 | ctf_integer(ino_t, ino, inode->i_ino) | |
502 | ctf_integer(unsigned int, len, len) | |
503 | ) | |
504 | ) | |
505 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,9,0) || \ | |
b6af46d1 | 506 | LTTNG_KERNEL_RANGE(5,8,6, 5,9,0)) |
347a7ba0 MJ |
507 | LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations, |
508 | TP_PROTO(struct inode *inode, unsigned int len, unsigned int needed), | |
509 | ||
510 | TP_ARGS(inode, len, needed), | |
511 | ||
512 | TP_FIELDS( | |
513 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
514 | ctf_integer(ino_t, ino, inode->i_ino) | |
515 | ctf_integer(unsigned int, len, len) | |
516 | ctf_integer(unsigned int, needed, needed) | |
517 | ) | |
518 | ) | |
519 | #else | |
3bc29f0a | 520 | LTTNG_TRACEPOINT_EVENT(ext4_discard_preallocations, |
b87700e3 AG |
521 | TP_PROTO(struct inode *inode), |
522 | ||
523 | TP_ARGS(inode), | |
524 | ||
f127e61e MD |
525 | TP_FIELDS( |
526 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
527 | ctf_integer(ino_t, ino, inode->i_ino) | |
528 | ) | |
b87700e3 | 529 | ) |
347a7ba0 | 530 | #endif |
b87700e3 | 531 | |
3bc29f0a | 532 | LTTNG_TRACEPOINT_EVENT(ext4_mb_discard_preallocations, |
b87700e3 AG |
533 | TP_PROTO(struct super_block *sb, int needed), |
534 | ||
535 | TP_ARGS(sb, needed), | |
536 | ||
f127e61e MD |
537 | TP_FIELDS( |
538 | ctf_integer(dev_t, dev, sb->s_dev) | |
539 | ctf_integer(int, needed, needed) | |
540 | ) | |
b87700e3 AG |
541 | ) |
542 | ||
3bc29f0a | 543 | LTTNG_TRACEPOINT_EVENT(ext4_request_blocks, |
b87700e3 AG |
544 | TP_PROTO(struct ext4_allocation_request *ar), |
545 | ||
546 | TP_ARGS(ar), | |
547 | ||
f127e61e MD |
548 | TP_FIELDS( |
549 | ctf_integer(dev_t, dev, ar->inode->i_sb->s_dev) | |
550 | ctf_integer(ino_t, ino, ar->inode->i_ino) | |
551 | ctf_integer(unsigned int, len, ar->len) | |
552 | ctf_integer(__u32, logical, ar->logical) | |
553 | ctf_integer(__u32, lleft, ar->lleft) | |
554 | ctf_integer(__u32, lright, ar->lright) | |
555 | ctf_integer(__u64, goal, ar->goal) | |
556 | ctf_integer(__u64, pleft, ar->pleft) | |
557 | ctf_integer(__u64, pright, ar->pright) | |
558 | ctf_integer(unsigned int, flags, ar->flags) | |
559 | ) | |
b87700e3 AG |
560 | ) |
561 | ||
3bc29f0a | 562 | LTTNG_TRACEPOINT_EVENT(ext4_allocate_blocks, |
b87700e3 AG |
563 | TP_PROTO(struct ext4_allocation_request *ar, unsigned long long block), |
564 | ||
565 | TP_ARGS(ar, block), | |
566 | ||
f127e61e MD |
567 | TP_FIELDS( |
568 | ctf_integer(dev_t, dev, ar->inode->i_sb->s_dev) | |
569 | ctf_integer(ino_t, ino, ar->inode->i_ino) | |
570 | ctf_integer(__u64, block, block) | |
571 | ctf_integer(unsigned int, len, ar->len) | |
572 | ctf_integer(__u32, logical, ar->logical) | |
573 | ctf_integer(__u32, lleft, ar->lleft) | |
574 | ctf_integer(__u32, lright, ar->lright) | |
575 | ctf_integer(__u64, goal, ar->goal) | |
576 | ctf_integer(__u64, pleft, ar->pleft) | |
577 | ctf_integer(__u64, pright, ar->pright) | |
578 | ctf_integer(unsigned int, flags, ar->flags) | |
579 | ) | |
b87700e3 AG |
580 | ) |
581 | ||
3bc29f0a | 582 | LTTNG_TRACEPOINT_EVENT(ext4_free_blocks, |
b87700e3 AG |
583 | TP_PROTO(struct inode *inode, __u64 block, unsigned long count, |
584 | int flags), | |
585 | ||
586 | TP_ARGS(inode, block, count, flags), | |
b87700e3 | 587 | |
f127e61e MD |
588 | TP_FIELDS( |
589 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
590 | ctf_integer(ino_t, ino, inode->i_ino) | |
591 | ctf_integer(__u64, block, block) | |
592 | ctf_integer(unsigned long, count, count) | |
f127e61e MD |
593 | ctf_integer(int, flags, flags) |
594 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
f127e61e | 595 | ) |
b87700e3 AG |
596 | ) |
597 | ||
3bc29f0a | 598 | LTTNG_TRACEPOINT_EVENT(ext4_sync_file_enter, |
b87700e3 AG |
599 | TP_PROTO(struct file *file, int datasync), |
600 | ||
601 | TP_ARGS(file, datasync), | |
b87700e3 | 602 | |
f127e61e | 603 | TP_FIELDS( |
f127e61e MD |
604 | ctf_integer(dev_t, dev, file->f_path.dentry->d_inode->i_sb->s_dev) |
605 | ctf_integer(ino_t, ino, file->f_path.dentry->d_inode->i_ino) | |
606 | ctf_integer(ino_t, parent, file->f_path.dentry->d_parent->d_inode->i_ino) | |
f127e61e MD |
607 | ctf_integer(int, datasync, datasync) |
608 | ) | |
b87700e3 AG |
609 | ) |
610 | ||
3bc29f0a | 611 | LTTNG_TRACEPOINT_EVENT(ext4_sync_file_exit, |
b87700e3 AG |
612 | TP_PROTO(struct inode *inode, int ret), |
613 | ||
614 | TP_ARGS(inode, ret), | |
615 | ||
f127e61e MD |
616 | TP_FIELDS( |
617 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
618 | ctf_integer(ino_t, ino, inode->i_ino) | |
619 | ctf_integer(int, ret, ret) | |
620 | ) | |
b87700e3 | 621 | ) |
b87700e3 | 622 | |
3bc29f0a | 623 | LTTNG_TRACEPOINT_EVENT(ext4_sync_fs, |
b87700e3 AG |
624 | TP_PROTO(struct super_block *sb, int wait), |
625 | ||
626 | TP_ARGS(sb, wait), | |
627 | ||
f127e61e MD |
628 | TP_FIELDS( |
629 | ctf_integer(dev_t, dev, sb->s_dev) | |
630 | ctf_integer(int, wait, wait) | |
b87700e3 | 631 | |
f127e61e | 632 | ) |
b87700e3 AG |
633 | ) |
634 | ||
5f4c791e | 635 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0)) |
cf101116 MJ |
636 | LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks, |
637 | TP_PROTO(struct inode *inode), | |
638 | ||
639 | TP_ARGS(inode), | |
640 | ||
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 | ) | |
646 | ) | |
647 | #else | |
3bc29f0a | 648 | LTTNG_TRACEPOINT_EVENT(ext4_alloc_da_blocks, |
b87700e3 AG |
649 | TP_PROTO(struct inode *inode), |
650 | ||
651 | TP_ARGS(inode), | |
652 | ||
f127e61e MD |
653 | TP_FIELDS( |
654 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
655 | ctf_integer(ino_t, ino, inode->i_ino) | |
656 | ctf_integer(unsigned int, data_blocks, EXT4_I(inode)->i_reserved_data_blocks) | |
657 | ctf_integer(unsigned int, meta_blocks, EXT4_I(inode)->i_reserved_meta_blocks) | |
658 | ) | |
b87700e3 | 659 | ) |
cf101116 | 660 | #endif |
b87700e3 | 661 | |
3bc29f0a | 662 | LTTNG_TRACEPOINT_EVENT(ext4_mballoc_alloc, |
b87700e3 AG |
663 | TP_PROTO(struct ext4_allocation_context *ac), |
664 | ||
665 | TP_ARGS(ac), | |
666 | ||
f127e61e MD |
667 | TP_FIELDS( |
668 | ctf_integer(dev_t, dev, ac->ac_inode->i_sb->s_dev) | |
669 | ctf_integer(ino_t, ino, ac->ac_inode->i_ino) | |
670 | ctf_integer(__u32, orig_logical, ac->ac_o_ex.fe_logical) | |
671 | ctf_integer(int, orig_start, ac->ac_o_ex.fe_start) | |
672 | ctf_integer(__u32, orig_group, ac->ac_o_ex.fe_group) | |
673 | ctf_integer(int, orig_len, ac->ac_o_ex.fe_len) | |
674 | ctf_integer(__u32, goal_logical, ac->ac_g_ex.fe_logical) | |
675 | ctf_integer(int, goal_start, ac->ac_g_ex.fe_start) | |
676 | ctf_integer(__u32, goal_group, ac->ac_g_ex.fe_group) | |
677 | ctf_integer(int, goal_len, ac->ac_g_ex.fe_len) | |
678 | ctf_integer(__u32, result_logical, ac->ac_f_ex.fe_logical) | |
679 | ctf_integer(int, result_start, ac->ac_f_ex.fe_start) | |
680 | ctf_integer(__u32, result_group, ac->ac_f_ex.fe_group) | |
681 | ctf_integer(int, result_len, ac->ac_f_ex.fe_len) | |
682 | ctf_integer(__u16, found, ac->ac_found) | |
683 | ctf_integer(__u16, groups, ac->ac_groups_scanned) | |
684 | ctf_integer(__u16, buddy, ac->ac_buddy) | |
685 | ctf_integer(__u16, flags, ac->ac_flags) | |
686 | ctf_integer(__u16, tail, ac->ac_tail) | |
687 | ctf_integer(__u8, cr, ac->ac_criteria) | |
688 | ) | |
b87700e3 AG |
689 | ) |
690 | ||
3bc29f0a | 691 | LTTNG_TRACEPOINT_EVENT(ext4_mballoc_prealloc, |
b87700e3 AG |
692 | TP_PROTO(struct ext4_allocation_context *ac), |
693 | ||
694 | TP_ARGS(ac), | |
695 | ||
f127e61e MD |
696 | TP_FIELDS( |
697 | ctf_integer(dev_t, dev, ac->ac_inode->i_sb->s_dev) | |
698 | ctf_integer(ino_t, ino, ac->ac_inode->i_ino) | |
699 | ctf_integer(__u32, orig_logical, ac->ac_o_ex.fe_logical) | |
700 | ctf_integer(int, orig_start, ac->ac_o_ex.fe_start) | |
701 | ctf_integer(__u32, orig_group, ac->ac_o_ex.fe_group) | |
702 | ctf_integer(int, orig_len, ac->ac_o_ex.fe_len) | |
703 | ctf_integer(__u32, result_logical, ac->ac_b_ex.fe_logical) | |
704 | ctf_integer(int, result_start, ac->ac_b_ex.fe_start) | |
705 | ctf_integer(__u32, result_group, ac->ac_b_ex.fe_group) | |
706 | ctf_integer(int, result_len, ac->ac_b_ex.fe_len) | |
707 | ) | |
b87700e3 AG |
708 | ) |
709 | ||
3bc29f0a | 710 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__mballoc, |
b87700e3 AG |
711 | TP_PROTO(struct super_block *sb, |
712 | struct inode *inode, | |
713 | ext4_group_t group, | |
714 | ext4_grpblk_t start, | |
715 | ext4_grpblk_t len), | |
716 | ||
717 | TP_ARGS(sb, inode, group, start, len), | |
b87700e3 | 718 | |
f127e61e | 719 | TP_FIELDS( |
f127e61e MD |
720 | ctf_integer(dev_t, dev, sb->s_dev) |
721 | ctf_integer(ino_t, ino, inode ? inode->i_ino : 0) | |
722 | ctf_integer(int, result_start, start) | |
723 | ctf_integer(__u32, result_group, group) | |
724 | ctf_integer(int, result_len, len) | |
b87700e3 AG |
725 | ) |
726 | ) | |
727 | ||
3bc29f0a | 728 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mballoc, ext4_mballoc_discard, |
b87700e3 | 729 | |
b87700e3 AG |
730 | TP_PROTO(struct super_block *sb, |
731 | struct inode *inode, | |
732 | ext4_group_t group, | |
733 | ext4_grpblk_t start, | |
734 | ext4_grpblk_t len), | |
735 | ||
736 | TP_ARGS(sb, inode, group, start, len) | |
b87700e3 AG |
737 | ) |
738 | ||
3bc29f0a | 739 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__mballoc, ext4_mballoc_free, |
b87700e3 | 740 | |
b87700e3 AG |
741 | TP_PROTO(struct super_block *sb, |
742 | struct inode *inode, | |
743 | ext4_group_t group, | |
744 | ext4_grpblk_t start, | |
745 | ext4_grpblk_t len), | |
746 | ||
747 | TP_ARGS(sb, inode, group, start, len) | |
b87700e3 AG |
748 | ) |
749 | ||
3bc29f0a | 750 | LTTNG_TRACEPOINT_EVENT(ext4_forget, |
b87700e3 AG |
751 | TP_PROTO(struct inode *inode, int is_metadata, __u64 block), |
752 | ||
753 | TP_ARGS(inode, is_metadata, block), | |
754 | ||
f127e61e MD |
755 | TP_FIELDS( |
756 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
757 | ctf_integer(ino_t, ino, inode->i_ino) | |
758 | ctf_integer(__u64, block, block) | |
759 | ctf_integer(int, is_metadata, is_metadata) | |
760 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
761 | ) | |
b87700e3 | 762 | ) |
b87700e3 | 763 | |
5f4c791e | 764 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0)) |
3bc29f0a | 765 | LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space, |
b87700e3 AG |
766 | TP_PROTO(struct inode *inode, int used_blocks, int quota_claim), |
767 | ||
768 | TP_ARGS(inode, used_blocks, quota_claim), | |
cf101116 MJ |
769 | |
770 | TP_FIELDS( | |
771 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
772 | ctf_integer(ino_t, ino, inode->i_ino) | |
773 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
774 | ctf_integer(int, used_blocks, used_blocks) | |
775 | ctf_integer(int, reserved_data_blocks, | |
776 | EXT4_I(inode)->i_reserved_data_blocks) | |
777 | ctf_integer(int, quota_claim, quota_claim) | |
778 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
779 | ) | |
780 | ) | |
5f4c791e | 781 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,2,0)) |
cf101116 MJ |
782 | LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space, |
783 | TP_PROTO(struct inode *inode, int used_blocks, int quota_claim), | |
784 | ||
785 | TP_ARGS(inode, used_blocks, quota_claim), | |
786 | ||
787 | TP_FIELDS( | |
788 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
789 | ctf_integer(ino_t, ino, inode->i_ino) | |
790 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
791 | ctf_integer(int, used_blocks, used_blocks) | |
792 | ctf_integer(int, reserved_data_blocks, | |
793 | EXT4_I(inode)->i_reserved_data_blocks) | |
794 | ctf_integer(int, reserved_meta_blocks, | |
795 | EXT4_I(inode)->i_reserved_meta_blocks) | |
796 | ctf_integer(int, allocated_meta_blocks, | |
797 | EXT4_I(inode)->i_allocated_meta_blocks) | |
798 | ctf_integer(int, quota_claim, quota_claim) | |
799 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
800 | ) | |
801 | ) | |
aa71c949 | 802 | #else |
cf101116 | 803 | LTTNG_TRACEPOINT_EVENT(ext4_da_update_reserve_space, |
b87700e3 AG |
804 | TP_PROTO(struct inode *inode, int used_blocks), |
805 | ||
806 | TP_ARGS(inode, used_blocks), | |
b87700e3 | 807 | |
f127e61e MD |
808 | TP_FIELDS( |
809 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
810 | ctf_integer(ino_t, ino, inode->i_ino) | |
811 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
812 | ctf_integer(int, used_blocks, used_blocks) | |
813 | ctf_integer(int, reserved_data_blocks, | |
b87700e3 | 814 | EXT4_I(inode)->i_reserved_data_blocks) |
f127e61e | 815 | ctf_integer(int, reserved_meta_blocks, |
b87700e3 | 816 | EXT4_I(inode)->i_reserved_meta_blocks) |
f127e61e | 817 | ctf_integer(int, allocated_meta_blocks, |
b87700e3 | 818 | EXT4_I(inode)->i_allocated_meta_blocks) |
f127e61e MD |
819 | ctf_integer(TP_MODE_T, mode, inode->i_mode) |
820 | ) | |
b87700e3 | 821 | ) |
cf101116 | 822 | #endif |
b87700e3 | 823 | |
5f4c791e | 824 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0)) |
cf101116 MJ |
825 | LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space, |
826 | TP_PROTO(struct inode *inode), | |
827 | ||
828 | TP_ARGS(inode), | |
829 | ||
830 | TP_FIELDS( | |
831 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
832 | ctf_integer(ino_t, ino, inode->i_ino) | |
833 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
834 | ctf_integer(int, reserved_data_blocks, | |
835 | EXT4_I(inode)->i_reserved_data_blocks) | |
836 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
837 | ) | |
838 | ) | |
5f4c791e | 839 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,2,0)) |
5780f1e8 MD |
840 | LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space, |
841 | TP_PROTO(struct inode *inode), | |
842 | ||
843 | TP_ARGS(inode), | |
844 | ||
845 | TP_FIELDS( | |
846 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
847 | ctf_integer(ino_t, ino, inode->i_ino) | |
848 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
849 | ctf_integer(int, reserved_data_blocks, | |
850 | EXT4_I(inode)->i_reserved_data_blocks) | |
851 | ctf_integer(int, reserved_meta_blocks, | |
852 | EXT4_I(inode)->i_reserved_meta_blocks) | |
853 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
854 | ) | |
855 | ) | |
aa71c949 | 856 | #else |
3bc29f0a | 857 | LTTNG_TRACEPOINT_EVENT(ext4_da_reserve_space, |
b87700e3 AG |
858 | TP_PROTO(struct inode *inode, int md_needed), |
859 | ||
860 | TP_ARGS(inode, md_needed), | |
861 | ||
f127e61e MD |
862 | TP_FIELDS( |
863 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
864 | ctf_integer(ino_t, ino, inode->i_ino) | |
865 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
866 | ctf_integer(int, md_needed, md_needed) | |
867 | ctf_integer(int, reserved_data_blocks, | |
b87700e3 | 868 | EXT4_I(inode)->i_reserved_data_blocks) |
f127e61e | 869 | ctf_integer(int, reserved_meta_blocks, |
b87700e3 | 870 | EXT4_I(inode)->i_reserved_meta_blocks) |
f127e61e MD |
871 | ctf_integer(TP_MODE_T, mode, inode->i_mode) |
872 | ) | |
b87700e3 | 873 | ) |
cf101116 MJ |
874 | #endif |
875 | ||
5f4c791e | 876 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,13,0)) |
cf101116 MJ |
877 | LTTNG_TRACEPOINT_EVENT(ext4_da_release_space, |
878 | TP_PROTO(struct inode *inode, int freed_blocks), | |
879 | ||
880 | TP_ARGS(inode, freed_blocks), | |
b87700e3 | 881 | |
cf101116 MJ |
882 | TP_FIELDS( |
883 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
884 | ctf_integer(ino_t, ino, inode->i_ino) | |
885 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
886 | ctf_integer(int, freed_blocks, freed_blocks) | |
887 | ctf_integer(int, reserved_data_blocks, | |
888 | EXT4_I(inode)->i_reserved_data_blocks) | |
889 | ctf_integer(TP_MODE_T, mode, inode->i_mode) | |
890 | ) | |
891 | ) | |
aa71c949 | 892 | #else |
3bc29f0a | 893 | LTTNG_TRACEPOINT_EVENT(ext4_da_release_space, |
b87700e3 AG |
894 | TP_PROTO(struct inode *inode, int freed_blocks), |
895 | ||
896 | TP_ARGS(inode, freed_blocks), | |
897 | ||
f127e61e MD |
898 | TP_FIELDS( |
899 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
900 | ctf_integer(ino_t, ino, inode->i_ino) | |
901 | ctf_integer(__u64, i_blocks, inode->i_blocks) | |
902 | ctf_integer(int, freed_blocks, freed_blocks) | |
903 | ctf_integer(int, reserved_data_blocks, | |
b87700e3 | 904 | EXT4_I(inode)->i_reserved_data_blocks) |
f127e61e | 905 | ctf_integer(int, reserved_meta_blocks, |
b87700e3 | 906 | EXT4_I(inode)->i_reserved_meta_blocks) |
f127e61e | 907 | ctf_integer(int, allocated_meta_blocks, |
b87700e3 | 908 | EXT4_I(inode)->i_allocated_meta_blocks) |
f127e61e MD |
909 | ctf_integer(TP_MODE_T, mode, inode->i_mode) |
910 | ) | |
b87700e3 AG |
911 | ) |
912 | #endif | |
913 | ||
3bc29f0a | 914 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__bitmap_load, |
b87700e3 AG |
915 | TP_PROTO(struct super_block *sb, unsigned long group), |
916 | ||
917 | TP_ARGS(sb, group), | |
918 | ||
f127e61e MD |
919 | TP_FIELDS( |
920 | ctf_integer(dev_t, dev, sb->s_dev) | |
921 | ctf_integer(__u32, group, group) | |
922 | ) | |
b87700e3 AG |
923 | ) |
924 | ||
3bc29f0a | 925 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_mb_bitmap_load, |
b87700e3 AG |
926 | |
927 | TP_PROTO(struct super_block *sb, unsigned long group), | |
928 | ||
929 | TP_ARGS(sb, group) | |
930 | ) | |
931 | ||
3bc29f0a | 932 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_mb_buddy_bitmap_load, |
b87700e3 AG |
933 | |
934 | TP_PROTO(struct super_block *sb, unsigned long group), | |
935 | ||
936 | TP_ARGS(sb, group) | |
937 | ) | |
b87700e3 | 938 | |
5f4c791e | 939 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,9,0)) |
20e546d0 MJ |
940 | LTTNG_TRACEPOINT_EVENT(ext4_read_block_bitmap_load, |
941 | TP_PROTO(struct super_block *sb, unsigned long group, bool prefetch), | |
942 | ||
943 | TP_ARGS(sb, group, prefetch), | |
944 | ||
945 | TP_FIELDS( | |
946 | ctf_integer(dev_t, dev, sb->s_dev) | |
947 | ctf_integer(__u32, group, group) | |
948 | ctf_integer(bool, prefetch, prefetch) | |
949 | ) | |
950 | ) | |
951 | #else | |
3bc29f0a | 952 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_read_block_bitmap_load, |
b87700e3 AG |
953 | |
954 | TP_PROTO(struct super_block *sb, unsigned long group), | |
955 | ||
956 | TP_ARGS(sb, group) | |
957 | ) | |
20e546d0 | 958 | #endif |
b87700e3 | 959 | |
3bc29f0a | 960 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__bitmap_load, ext4_load_inode_bitmap, |
b87700e3 AG |
961 | |
962 | TP_PROTO(struct super_block *sb, unsigned long group), | |
963 | ||
964 | TP_ARGS(sb, group) | |
965 | ) | |
966 | ||
3bc29f0a | 967 | LTTNG_TRACEPOINT_EVENT(ext4_direct_IO_enter, |
b87700e3 AG |
968 | TP_PROTO(struct inode *inode, loff_t offset, unsigned long len, int rw), |
969 | ||
970 | TP_ARGS(inode, offset, len, rw), | |
971 | ||
f127e61e MD |
972 | TP_FIELDS( |
973 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
974 | ctf_integer(ino_t, ino, inode->i_ino) | |
975 | ctf_integer(loff_t, pos, offset) | |
976 | ctf_integer(unsigned long, len, len) | |
977 | ctf_integer(int, rw, rw) | |
978 | ) | |
b87700e3 AG |
979 | ) |
980 | ||
3bc29f0a | 981 | LTTNG_TRACEPOINT_EVENT(ext4_direct_IO_exit, |
b87700e3 AG |
982 | TP_PROTO(struct inode *inode, loff_t offset, unsigned long len, |
983 | int rw, int ret), | |
984 | ||
985 | TP_ARGS(inode, offset, len, rw, ret), | |
986 | ||
f127e61e MD |
987 | TP_FIELDS( |
988 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
989 | ctf_integer(ino_t, ino, inode->i_ino) | |
990 | ctf_integer(loff_t, pos, offset) | |
991 | ctf_integer(unsigned long, len, len) | |
992 | ctf_integer(int, rw, rw) | |
993 | ctf_integer(int, ret, ret) | |
994 | ) | |
b87700e3 AG |
995 | ) |
996 | ||
3bc29f0a | 997 | LTTNG_TRACEPOINT_EVENT(ext4_fallocate_exit, |
11af8f55 MD |
998 | TP_PROTO(struct inode *inode, loff_t offset, |
999 | unsigned int max_blocks, int ret), | |
1000 | ||
1001 | TP_ARGS(inode, offset, max_blocks, ret), | |
1002 | ||
f127e61e MD |
1003 | TP_FIELDS( |
1004 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1005 | ctf_integer(ino_t, ino, inode->i_ino) | |
1006 | ctf_integer(loff_t, pos, offset) | |
1007 | ctf_integer(unsigned int, blocks, max_blocks) | |
1008 | ctf_integer(int, ret, ret) | |
1009 | ) | |
11af8f55 MD |
1010 | ) |
1011 | ||
5f4c791e | 1012 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,15,0)) |
11af8f55 | 1013 | |
3bc29f0a | 1014 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__fallocate_mode, |
b87700e3 AG |
1015 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode), |
1016 | ||
1017 | TP_ARGS(inode, offset, len, mode), | |
1018 | ||
f127e61e MD |
1019 | TP_FIELDS( |
1020 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1021 | ctf_integer(ino_t, ino, inode->i_ino) | |
1022 | ctf_integer(loff_t, pos, offset) | |
1023 | ctf_integer(loff_t, len, len) | |
1024 | ctf_integer(int, mode, mode) | |
1025 | ) | |
b87700e3 AG |
1026 | ) |
1027 | ||
3bc29f0a | 1028 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode, ext4_fallocate_enter, |
b87700e3 | 1029 | |
11af8f55 MD |
1030 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode), |
1031 | ||
1032 | TP_ARGS(inode, offset, len, mode) | |
1033 | ) | |
1034 | ||
3bc29f0a | 1035 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode, ext4_punch_hole, |
11af8f55 MD |
1036 | |
1037 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode), | |
1038 | ||
1039 | TP_ARGS(inode, offset, len, mode) | |
1040 | ) | |
1041 | ||
3bc29f0a | 1042 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__fallocate_mode, ext4_zero_range, |
11af8f55 MD |
1043 | |
1044 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode), | |
1045 | ||
1046 | TP_ARGS(inode, offset, len, mode) | |
1047 | ) | |
1048 | ||
5f4c791e | 1049 | #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,15,0)) */ |
11af8f55 | 1050 | |
3bc29f0a | 1051 | LTTNG_TRACEPOINT_EVENT(ext4_fallocate_enter, |
11af8f55 MD |
1052 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int mode), |
1053 | ||
1054 | TP_ARGS(inode, offset, len, mode), | |
b87700e3 | 1055 | |
f127e61e MD |
1056 | TP_FIELDS( |
1057 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1058 | ctf_integer(ino_t, ino, inode->i_ino) | |
1059 | ctf_integer(loff_t, pos, offset) | |
1060 | ctf_integer(loff_t, len, len) | |
1061 | ctf_integer(int, mode, mode) | |
1062 | ) | |
b87700e3 AG |
1063 | ) |
1064 | ||
5f4c791e | 1065 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
c1b29b59 | 1066 | |
3bc29f0a | 1067 | LTTNG_TRACEPOINT_EVENT(ext4_punch_hole, |
c1b29b59 MD |
1068 | TP_PROTO(struct inode *inode, loff_t offset, loff_t len), |
1069 | ||
1070 | TP_ARGS(inode, offset, len), | |
1071 | ||
f127e61e MD |
1072 | TP_FIELDS( |
1073 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1074 | ctf_integer(ino_t, ino, inode->i_ino) | |
1075 | ctf_integer(loff_t, pos, offset) | |
1076 | ctf_integer(loff_t, len, len) | |
1077 | ) | |
c1b29b59 MD |
1078 | ) |
1079 | ||
5f4c791e | 1080 | #endif /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) */ |
11af8f55 | 1081 | |
5f4c791e | 1082 | #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,15,0)) */ |
c1b29b59 | 1083 | |
3bc29f0a | 1084 | LTTNG_TRACEPOINT_EVENT(ext4_unlink_enter, |
b87700e3 AG |
1085 | TP_PROTO(struct inode *parent, struct dentry *dentry), |
1086 | ||
1087 | TP_ARGS(parent, dentry), | |
1088 | ||
f127e61e MD |
1089 | TP_FIELDS( |
1090 | ctf_integer(dev_t, dev, dentry->d_inode->i_sb->s_dev) | |
1091 | ctf_integer(ino_t, ino, dentry->d_inode->i_ino) | |
1092 | ctf_integer(ino_t, parent, parent->i_ino) | |
1093 | ctf_integer(loff_t, size, dentry->d_inode->i_size) | |
1094 | ) | |
b87700e3 AG |
1095 | ) |
1096 | ||
3bc29f0a | 1097 | LTTNG_TRACEPOINT_EVENT(ext4_unlink_exit, |
b87700e3 AG |
1098 | TP_PROTO(struct dentry *dentry, int ret), |
1099 | ||
1100 | TP_ARGS(dentry, ret), | |
1101 | ||
f127e61e MD |
1102 | TP_FIELDS( |
1103 | ctf_integer(dev_t, dev, dentry->d_inode->i_sb->s_dev) | |
1104 | ctf_integer(ino_t, ino, dentry->d_inode->i_ino) | |
1105 | ctf_integer(int, ret, ret) | |
1106 | ) | |
b87700e3 AG |
1107 | ) |
1108 | ||
3bc29f0a | 1109 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__truncate, |
b87700e3 AG |
1110 | TP_PROTO(struct inode *inode), |
1111 | ||
1112 | TP_ARGS(inode), | |
1113 | ||
f127e61e MD |
1114 | TP_FIELDS( |
1115 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1116 | ctf_integer(ino_t, ino, inode->i_ino) | |
1117 | ctf_integer(unsigned int, blocks, inode->i_blocks) | |
1118 | ) | |
b87700e3 AG |
1119 | ) |
1120 | ||
3bc29f0a | 1121 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__truncate, ext4_truncate_enter, |
b87700e3 AG |
1122 | |
1123 | TP_PROTO(struct inode *inode), | |
1124 | ||
1125 | TP_ARGS(inode) | |
1126 | ) | |
1127 | ||
3bc29f0a | 1128 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__truncate, ext4_truncate_exit, |
b87700e3 AG |
1129 | |
1130 | TP_PROTO(struct inode *inode), | |
1131 | ||
1132 | TP_ARGS(inode) | |
1133 | ) | |
1134 | ||
5f4c791e | 1135 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,2,0)) |
b87700e3 | 1136 | /* 'ux' is the uninitialized extent. */ |
3bc29f0a | 1137 | LTTNG_TRACEPOINT_EVENT(ext4_ext_convert_to_initialized_enter, |
b87700e3 AG |
1138 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, |
1139 | struct ext4_extent *ux), | |
1140 | ||
1141 | TP_ARGS(inode, map, ux), | |
1142 | ||
f127e61e MD |
1143 | TP_FIELDS( |
1144 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1145 | ctf_integer(ino_t, ino, inode->i_ino) | |
1146 | ctf_integer(ext4_lblk_t, m_lblk, map->m_lblk) | |
1147 | ctf_integer(unsigned, m_len, map->m_len) | |
1148 | ctf_integer(ext4_lblk_t, u_lblk, le32_to_cpu(ux->ee_block)) | |
1149 | ctf_integer(unsigned, u_len, ext4_ext_get_actual_len(ux)) | |
1150 | ctf_integer(ext4_fsblk_t, u_pblk, ext4_ext_pblock(ux)) | |
1151 | ) | |
b87700e3 AG |
1152 | ) |
1153 | ||
1154 | /* | |
1155 | * 'ux' is the uninitialized extent. | |
1156 | * 'ix' is the initialized extent to which blocks are transferred. | |
1157 | */ | |
3bc29f0a | 1158 | LTTNG_TRACEPOINT_EVENT(ext4_ext_convert_to_initialized_fastpath, |
b87700e3 AG |
1159 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, |
1160 | struct ext4_extent *ux, struct ext4_extent *ix), | |
1161 | ||
1162 | TP_ARGS(inode, map, ux, ix), | |
1163 | ||
f127e61e MD |
1164 | TP_FIELDS( |
1165 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1166 | ctf_integer(ino_t, ino, inode->i_ino) | |
1167 | ctf_integer(ext4_lblk_t, m_lblk, map->m_lblk) | |
1168 | ctf_integer(unsigned, m_len, map->m_len) | |
1169 | ctf_integer(ext4_lblk_t, u_lblk, le32_to_cpu(ux->ee_block)) | |
1170 | ctf_integer(unsigned, u_len, ext4_ext_get_actual_len(ux)) | |
1171 | ctf_integer(ext4_fsblk_t, u_pblk, ext4_ext_pblock(ux)) | |
1172 | ctf_integer(ext4_lblk_t, i_lblk, le32_to_cpu(ix->ee_block)) | |
1173 | ctf_integer(unsigned, i_len, ext4_ext_get_actual_len(ix)) | |
1174 | ctf_integer(ext4_fsblk_t, i_pblk, ext4_ext_pblock(ix)) | |
1175 | ) | |
b87700e3 AG |
1176 | ) |
1177 | #endif | |
1178 | ||
3bc29f0a | 1179 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_enter, |
b87700e3 AG |
1180 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1181 | unsigned int len, unsigned int flags), | |
1182 | ||
1183 | TP_ARGS(inode, lblk, len, flags), | |
1184 | ||
f127e61e MD |
1185 | TP_FIELDS( |
1186 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1187 | ctf_integer(ino_t, ino, inode->i_ino) | |
1188 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1189 | ctf_integer(unsigned int, len, len) | |
1190 | ctf_integer(unsigned int, flags, flags) | |
1191 | ) | |
b87700e3 AG |
1192 | ) |
1193 | ||
3bc29f0a | 1194 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_enter, ext4_ext_map_blocks_enter, |
b87700e3 AG |
1195 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1196 | unsigned len, unsigned flags), | |
1197 | ||
1198 | TP_ARGS(inode, lblk, len, flags) | |
1199 | ) | |
1200 | ||
3bc29f0a | 1201 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_enter, ext4_ind_map_blocks_enter, |
b87700e3 AG |
1202 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1203 | unsigned len, unsigned flags), | |
1204 | ||
1205 | TP_ARGS(inode, lblk, len, flags) | |
1206 | ) | |
1207 | ||
5f4c791e | 1208 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1209 | |
3bc29f0a | 1210 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit, |
00be8842 MD |
1211 | TP_PROTO(struct inode *inode, unsigned flags, struct ext4_map_blocks *map, |
1212 | int ret), | |
1213 | ||
1214 | TP_ARGS(inode, flags, map, ret), | |
1215 | ||
f127e61e MD |
1216 | TP_FIELDS( |
1217 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1218 | ctf_integer(ino_t, ino, inode->i_ino) | |
1219 | ctf_integer(unsigned int, flags, flags) | |
1220 | ctf_integer(ext4_fsblk_t, pblk, map->m_pblk) | |
1221 | ctf_integer(ext4_lblk_t, lblk, map->m_lblk) | |
1222 | ctf_integer(unsigned int, len, map->m_len) | |
1223 | ctf_integer(unsigned int, mflags, map->m_flags) | |
1224 | ctf_integer(int, ret, ret) | |
1225 | ) | |
00be8842 MD |
1226 | ) |
1227 | ||
3bc29f0a | 1228 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ext_map_blocks_exit, |
00be8842 MD |
1229 | TP_PROTO(struct inode *inode, unsigned flags, |
1230 | struct ext4_map_blocks *map, int ret), | |
1231 | ||
1232 | TP_ARGS(inode, flags, map, ret) | |
1233 | ) | |
1234 | ||
3bc29f0a | 1235 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ind_map_blocks_exit, |
00be8842 MD |
1236 | TP_PROTO(struct inode *inode, unsigned flags, |
1237 | struct ext4_map_blocks *map, int ret), | |
1238 | ||
1239 | TP_ARGS(inode, flags, map, ret) | |
1240 | ) | |
1241 | ||
5f4c791e | 1242 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) |
162774b4 | 1243 | |
3bc29f0a | 1244 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit, |
162774b4 MD |
1245 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int ret), |
1246 | ||
1247 | TP_ARGS(inode, map, ret), | |
1248 | ||
f127e61e MD |
1249 | TP_FIELDS( |
1250 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1251 | ctf_integer(ino_t, ino, inode->i_ino) | |
f127e61e MD |
1252 | ctf_integer(ext4_fsblk_t, pblk, map->m_pblk) |
1253 | ctf_integer(ext4_lblk_t, lblk, map->m_lblk) | |
1254 | ctf_integer(unsigned int, len, map->m_len) | |
1255 | ctf_integer(unsigned int, mflags, map->m_flags) | |
1256 | ctf_integer(int, ret, ret) | |
1257 | ) | |
162774b4 MD |
1258 | ) |
1259 | ||
3bc29f0a | 1260 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ext_map_blocks_exit, |
162774b4 MD |
1261 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int ret), |
1262 | ||
1263 | TP_ARGS(inode, map, ret) | |
1264 | ) | |
1265 | ||
3bc29f0a | 1266 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ind_map_blocks_exit, |
162774b4 MD |
1267 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int ret), |
1268 | ||
1269 | TP_ARGS(inode, map, ret) | |
1270 | ) | |
1271 | ||
5f4c791e | 1272 | #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
162774b4 | 1273 | |
3bc29f0a | 1274 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__map_blocks_exit, |
b87700e3 AG |
1275 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1276 | ext4_fsblk_t pblk, unsigned int len, int ret), | |
1277 | ||
1278 | TP_ARGS(inode, lblk, pblk, len, ret), | |
1279 | ||
f127e61e MD |
1280 | TP_FIELDS( |
1281 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1282 | ctf_integer(ino_t, ino, inode->i_ino) | |
1283 | ctf_integer(ext4_fsblk_t, pblk, pblk) | |
1284 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1285 | ctf_integer(unsigned int, len, len) | |
1286 | ctf_integer(int, ret, ret) | |
1287 | ) | |
b87700e3 AG |
1288 | ) |
1289 | ||
3bc29f0a | 1290 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ext_map_blocks_exit, |
b87700e3 AG |
1291 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1292 | ext4_fsblk_t pblk, unsigned len, int ret), | |
1293 | ||
1294 | TP_ARGS(inode, lblk, pblk, len, ret) | |
1295 | ) | |
1296 | ||
3bc29f0a | 1297 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__map_blocks_exit, ext4_ind_map_blocks_exit, |
b87700e3 AG |
1298 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, |
1299 | ext4_fsblk_t pblk, unsigned len, int ret), | |
1300 | ||
1301 | TP_ARGS(inode, lblk, pblk, len, ret) | |
1302 | ) | |
1303 | ||
5f4c791e | 1304 | #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
162774b4 | 1305 | |
3bc29f0a | 1306 | LTTNG_TRACEPOINT_EVENT(ext4_ext_load_extent, |
b87700e3 AG |
1307 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk), |
1308 | ||
1309 | TP_ARGS(inode, lblk, pblk), | |
1310 | ||
f127e61e MD |
1311 | TP_FIELDS( |
1312 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1313 | ctf_integer(ino_t, ino, inode->i_ino) | |
1314 | ctf_integer(ext4_fsblk_t, pblk, pblk) | |
1315 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1316 | ) | |
b87700e3 AG |
1317 | ) |
1318 | ||
5f4c791e | 1319 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,10,0)) |
e68322f3 MJ |
1320 | LTTNG_TRACEPOINT_EVENT(ext4_load_inode, |
1321 | TP_PROTO(struct super_block *sb, unsigned long ino), | |
1322 | ||
1323 | TP_ARGS(sb, ino), | |
1324 | ||
1325 | TP_FIELDS( | |
1326 | ctf_integer(dev_t, dev, sb->s_dev) | |
1327 | ctf_integer(ino_t, ino, ino) | |
1328 | ) | |
1329 | ) | |
1330 | #else | |
3bc29f0a | 1331 | LTTNG_TRACEPOINT_EVENT(ext4_load_inode, |
b87700e3 AG |
1332 | TP_PROTO(struct inode *inode), |
1333 | ||
1334 | TP_ARGS(inode), | |
1335 | ||
f127e61e MD |
1336 | TP_FIELDS( |
1337 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1338 | ctf_integer(ino_t, ino, inode->i_ino) | |
1339 | ) | |
b87700e3 | 1340 | ) |
e68322f3 | 1341 | #endif |
b87700e3 | 1342 | |
057ad399 KS |
1343 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,5,0) || \ |
1344 | LTTNG_RHEL_KERNEL_RANGE(4,18,0,240,15,1, 4,19,0,0,0,0)) | |
bb0eb66d MJ |
1345 | |
1346 | LTTNG_TRACEPOINT_EVENT(ext4_journal_start, | |
1347 | TP_PROTO(struct super_block *sb, int blocks, int rsv_blocks, | |
1348 | int revoke_creds, unsigned long IP), | |
1349 | ||
1350 | TP_ARGS(sb, blocks, rsv_blocks, revoke_creds, IP), | |
1351 | ||
1352 | TP_FIELDS( | |
1353 | ctf_integer(dev_t, dev, sb->s_dev) | |
2c054599 | 1354 | ctf_integer_hex(unsigned long, ip, IP) |
bb0eb66d MJ |
1355 | ctf_integer(int, blocks, blocks) |
1356 | ctf_integer(int, rsv_blocks, rsv_blocks) | |
1357 | ctf_integer(int, revoke_creds, revoke_creds) | |
1358 | ) | |
1359 | ) | |
1360 | ||
1361 | LTTNG_TRACEPOINT_EVENT(ext4_journal_start_reserved, | |
1362 | TP_PROTO(struct super_block *sb, int blocks, unsigned long IP), | |
1363 | ||
1364 | TP_ARGS(sb, blocks, IP), | |
1365 | ||
1366 | TP_FIELDS( | |
1367 | ctf_integer(dev_t, dev, sb->s_dev) | |
2c054599 | 1368 | ctf_integer_hex(unsigned long, ip, IP) |
bb0eb66d MJ |
1369 | ctf_integer(int, blocks, blocks) |
1370 | ) | |
1371 | ) | |
1372 | ||
5f4c791e | 1373 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1374 | |
3bc29f0a | 1375 | LTTNG_TRACEPOINT_EVENT(ext4_journal_start, |
00be8842 MD |
1376 | TP_PROTO(struct super_block *sb, int blocks, int rsv_blocks, |
1377 | unsigned long IP), | |
1378 | ||
1379 | TP_ARGS(sb, blocks, rsv_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 | ctf_integer(int, rsv_blocks, rsv_blocks) | |
1386 | ) | |
00be8842 MD |
1387 | ) |
1388 | ||
3bc29f0a | 1389 | LTTNG_TRACEPOINT_EVENT(ext4_journal_start_reserved, |
00be8842 MD |
1390 | TP_PROTO(struct super_block *sb, int blocks, unsigned long IP), |
1391 | ||
1392 | TP_ARGS(sb, blocks, IP), | |
1393 | ||
f127e61e MD |
1394 | TP_FIELDS( |
1395 | ctf_integer(dev_t, dev, sb->s_dev) | |
2c054599 | 1396 | ctf_integer_hex(unsigned long, ip, IP) |
f127e61e MD |
1397 | ctf_integer(int, blocks, blocks) |
1398 | ) | |
00be8842 MD |
1399 | ) |
1400 | ||
5f4c791e | 1401 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,1,0)) |
00be8842 | 1402 | |
3bc29f0a | 1403 | LTTNG_TRACEPOINT_EVENT(ext4_journal_start, |
b87700e3 AG |
1404 | TP_PROTO(struct super_block *sb, int nblocks, unsigned long IP), |
1405 | ||
1406 | TP_ARGS(sb, nblocks, IP), | |
1407 | ||
f127e61e MD |
1408 | TP_FIELDS( |
1409 | ctf_integer(dev_t, dev, sb->s_dev) | |
2c054599 | 1410 | ctf_integer_hex(unsigned long, ip, IP) |
f127e61e MD |
1411 | ctf_integer(int, nblocks, nblocks) |
1412 | ) | |
b87700e3 AG |
1413 | ) |
1414 | ||
3bc29f0a | 1415 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__trim, |
b87700e3 AG |
1416 | TP_PROTO(struct super_block *sb, |
1417 | ext4_group_t group, | |
1418 | ext4_grpblk_t start, | |
1419 | ext4_grpblk_t len), | |
1420 | ||
1421 | TP_ARGS(sb, group, start, len), | |
1422 | ||
f127e61e MD |
1423 | TP_FIELDS( |
1424 | ctf_integer(int, dev_major, MAJOR(sb->s_dev)) | |
1425 | ctf_integer(int, dev_minor, MINOR(sb->s_dev)) | |
1426 | ctf_integer(__u32, group, group) | |
1427 | ctf_integer(int, start, start) | |
1428 | ctf_integer(int, len, len) | |
1429 | ) | |
b87700e3 AG |
1430 | ) |
1431 | ||
3bc29f0a | 1432 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__trim, ext4_trim_extent, |
b87700e3 AG |
1433 | |
1434 | TP_PROTO(struct super_block *sb, | |
1435 | ext4_group_t group, | |
1436 | ext4_grpblk_t start, | |
1437 | ext4_grpblk_t len), | |
1438 | ||
1439 | TP_ARGS(sb, group, start, len) | |
1440 | ) | |
1441 | ||
3bc29f0a | 1442 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__trim, ext4_trim_all_free, |
b87700e3 AG |
1443 | |
1444 | TP_PROTO(struct super_block *sb, | |
1445 | ext4_group_t group, | |
1446 | ext4_grpblk_t start, | |
1447 | ext4_grpblk_t len), | |
1448 | ||
1449 | TP_ARGS(sb, group, start, len) | |
1450 | ) | |
1451 | #endif | |
1452 | ||
5f4c791e | 1453 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,2,0)) |
162774b4 | 1454 | |
3bc29f0a | 1455 | LTTNG_TRACEPOINT_EVENT(ext4_ext_handle_uninitialized_extents, |
5f4c791e | 1456 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) |
162774b4 MD |
1457 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, int flags, |
1458 | unsigned int allocated, ext4_fsblk_t newblock), | |
1459 | ||
1460 | TP_ARGS(inode, map, flags, allocated, newblock), | |
5f4c791e | 1461 | #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
b87700e3 AG |
1462 | TP_PROTO(struct inode *inode, struct ext4_map_blocks *map, |
1463 | unsigned int allocated, ext4_fsblk_t newblock), | |
1464 | ||
1465 | TP_ARGS(inode, map, allocated, newblock), | |
5f4c791e | 1466 | #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
b87700e3 | 1467 | |
f127e61e MD |
1468 | TP_FIELDS( |
1469 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1470 | ctf_integer(ino_t, ino, inode->i_ino) | |
5f4c791e | 1471 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) |
f127e61e | 1472 | ctf_integer(int, flags, flags) |
5f4c791e | 1473 | #else /* #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
f127e61e | 1474 | ctf_integer(int, flags, map->m_flags) |
5f4c791e | 1475 | #endif /* #else #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,8,0)) */ |
f127e61e MD |
1476 | ctf_integer(ext4_lblk_t, lblk, map->m_lblk) |
1477 | ctf_integer(ext4_fsblk_t, pblk, map->m_pblk) | |
1478 | ctf_integer(unsigned int, len, map->m_len) | |
1479 | ctf_integer(unsigned int, allocated, allocated) | |
1480 | ctf_integer(ext4_fsblk_t, newblk, newblock) | |
1481 | ) | |
b87700e3 AG |
1482 | ) |
1483 | ||
3bc29f0a | 1484 | LTTNG_TRACEPOINT_EVENT(ext4_get_implied_cluster_alloc_exit, |
b87700e3 AG |
1485 | TP_PROTO(struct super_block *sb, struct ext4_map_blocks *map, int ret), |
1486 | ||
1487 | TP_ARGS(sb, map, ret), | |
1488 | ||
f127e61e MD |
1489 | TP_FIELDS( |
1490 | ctf_integer(dev_t, dev, sb->s_dev) | |
1491 | ctf_integer(unsigned int, flags, map->m_flags) | |
1492 | ctf_integer(ext4_lblk_t, lblk, map->m_lblk) | |
1493 | ctf_integer(ext4_fsblk_t, pblk, map->m_pblk) | |
1494 | ctf_integer(unsigned int, len, map->m_len) | |
1495 | ctf_integer(int, ret, ret) | |
1496 | ) | |
b87700e3 AG |
1497 | ) |
1498 | ||
3bc29f0a | 1499 | LTTNG_TRACEPOINT_EVENT(ext4_ext_put_in_cache, |
b87700e3 AG |
1500 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, unsigned int len, |
1501 | ext4_fsblk_t start), | |
1502 | ||
1503 | TP_ARGS(inode, lblk, len, start), | |
1504 | ||
f127e61e MD |
1505 | TP_FIELDS( |
1506 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1507 | ctf_integer(ino_t, ino, inode->i_ino) | |
1508 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1509 | ctf_integer(unsigned int, len, len) | |
1510 | ctf_integer(ext4_fsblk_t, start, start) | |
1511 | ) | |
b87700e3 AG |
1512 | ) |
1513 | ||
3bc29f0a | 1514 | LTTNG_TRACEPOINT_EVENT(ext4_ext_in_cache, |
b87700e3 AG |
1515 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, int ret), |
1516 | ||
1517 | TP_ARGS(inode, lblk, ret), | |
1518 | ||
f127e61e MD |
1519 | TP_FIELDS( |
1520 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1521 | ctf_integer(ino_t, ino, inode->i_ino) | |
1522 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1523 | ctf_integer(int, ret, ret) | |
1524 | ) | |
b87700e3 AG |
1525 | ) |
1526 | ||
3bc29f0a | 1527 | LTTNG_TRACEPOINT_EVENT(ext4_find_delalloc_range, |
b87700e3 AG |
1528 | TP_PROTO(struct inode *inode, ext4_lblk_t from, ext4_lblk_t to, |
1529 | int reverse, int found, ext4_lblk_t found_blk), | |
1530 | ||
1531 | TP_ARGS(inode, from, to, reverse, found, found_blk), | |
1532 | ||
f127e61e MD |
1533 | TP_FIELDS( |
1534 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1535 | ctf_integer(ino_t, ino, inode->i_ino) | |
1536 | ctf_integer(ext4_lblk_t, from, from) | |
1537 | ctf_integer(ext4_lblk_t, to, to) | |
1538 | ctf_integer(int, reverse, reverse) | |
1539 | ctf_integer(int, found, found) | |
1540 | ctf_integer(ext4_lblk_t, found_blk, found_blk) | |
1541 | ) | |
b87700e3 AG |
1542 | ) |
1543 | ||
3bc29f0a | 1544 | LTTNG_TRACEPOINT_EVENT(ext4_get_reserved_cluster_alloc, |
b87700e3 AG |
1545 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, unsigned int len), |
1546 | ||
1547 | TP_ARGS(inode, lblk, len), | |
1548 | ||
f127e61e MD |
1549 | TP_FIELDS( |
1550 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1551 | ctf_integer(ino_t, ino, inode->i_ino) | |
1552 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1553 | ctf_integer(unsigned int, len, len) | |
1554 | ) | |
b87700e3 AG |
1555 | ) |
1556 | ||
3bc29f0a | 1557 | LTTNG_TRACEPOINT_EVENT(ext4_ext_show_extent, |
b87700e3 AG |
1558 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk, |
1559 | unsigned short len), | |
1560 | ||
1561 | TP_ARGS(inode, lblk, pblk, len), | |
1562 | ||
f127e61e MD |
1563 | TP_FIELDS( |
1564 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1565 | ctf_integer(ino_t, ino, inode->i_ino) | |
1566 | ctf_integer(ext4_fsblk_t, pblk, pblk) | |
1567 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1568 | ctf_integer(unsigned short, len, len) | |
1569 | ) | |
b87700e3 AG |
1570 | ) |
1571 | ||
5f4c791e | 1572 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \ |
3395f24e | 1573 | LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0)) |
85957268 MJ |
1574 | |
1575 | LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks, | |
1576 | TP_PROTO(struct inode *inode, struct ext4_extent *ex, | |
1577 | ext4_lblk_t from, ext4_fsblk_t to, | |
1578 | struct partial_cluster *pc), | |
1579 | ||
1580 | TP_ARGS(inode, ex, from, to, pc), | |
1581 | ||
1582 | TP_FIELDS( | |
1583 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1584 | ctf_integer(ino_t, ino, inode->i_ino) | |
1585 | ctf_integer(ext4_lblk_t, from, from) | |
1586 | ctf_integer(ext4_lblk_t, to, to) | |
1587 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1588 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1589 | ctf_integer(unsigned short, ee_len, ext4_ext_get_actual_len(ex)) | |
1590 | ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu) | |
1591 | ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk) | |
1592 | ctf_integer(int, pc_state, pc->state) | |
1593 | ) | |
1594 | ) | |
1595 | ||
5f4c791e | 1596 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1597 | |
3bc29f0a | 1598 | LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks, |
00be8842 MD |
1599 | TP_PROTO(struct inode *inode, struct ext4_extent *ex, |
1600 | ext4_lblk_t from, ext4_fsblk_t to, | |
1601 | long long partial_cluster), | |
1602 | ||
1603 | TP_ARGS(inode, ex, from, to, partial_cluster), | |
1604 | ||
f127e61e MD |
1605 | TP_FIELDS( |
1606 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1607 | ctf_integer(ino_t, ino, inode->i_ino) | |
1608 | ctf_integer(ext4_lblk_t, from, from) | |
1609 | ctf_integer(ext4_lblk_t, to, to) | |
1610 | ctf_integer(long long, partial, partial_cluster) | |
1611 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1612 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1613 | ctf_integer(unsigned short, ee_len, ext4_ext_get_actual_len(ex)) | |
1614 | ) | |
00be8842 MD |
1615 | ) |
1616 | ||
1617 | #else | |
1618 | ||
3bc29f0a | 1619 | LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks, |
b87700e3 AG |
1620 | TP_PROTO(struct inode *inode, struct ext4_extent *ex, |
1621 | ext4_lblk_t from, ext4_fsblk_t to, | |
1622 | ext4_fsblk_t partial_cluster), | |
1623 | ||
1624 | TP_ARGS(inode, ex, from, to, partial_cluster), | |
1625 | ||
f127e61e MD |
1626 | TP_FIELDS( |
1627 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1628 | ctf_integer(ino_t, ino, inode->i_ino) | |
1629 | ctf_integer(ext4_lblk_t, from, from) | |
1630 | ctf_integer(ext4_lblk_t, to, to) | |
1631 | ctf_integer(ext4_fsblk_t, partial, partial_cluster) | |
1632 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1633 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1634 | ctf_integer(unsigned short, ee_len, ext4_ext_get_actual_len(ex)) | |
1635 | ) | |
b87700e3 AG |
1636 | ) |
1637 | ||
00be8842 MD |
1638 | #endif |
1639 | ||
5f4c791e | 1640 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \ |
3395f24e | 1641 | LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0)) |
85957268 MJ |
1642 | |
1643 | LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf, | |
1644 | TP_PROTO(struct inode *inode, ext4_lblk_t start, | |
1645 | struct ext4_extent *ex, | |
1646 | struct partial_cluster *pc), | |
1647 | ||
1648 | TP_ARGS(inode, start, ex, pc), | |
1649 | ||
1650 | TP_FIELDS( | |
1651 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1652 | ctf_integer(ino_t, ino, inode->i_ino) | |
1653 | ctf_integer(ext4_lblk_t, start, start) | |
1654 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1655 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1656 | ctf_integer(short, ee_len, ext4_ext_get_actual_len(ex)) | |
1657 | ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu) | |
1658 | ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk) | |
1659 | ctf_integer(int, pc_state, pc->state) | |
1660 | ) | |
1661 | ) | |
1662 | ||
5f4c791e | 1663 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1664 | |
3bc29f0a | 1665 | LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf, |
00be8842 MD |
1666 | TP_PROTO(struct inode *inode, ext4_lblk_t start, |
1667 | struct ext4_extent *ex, | |
1668 | long long partial_cluster), | |
1669 | ||
1670 | TP_ARGS(inode, start, ex, partial_cluster), | |
1671 | ||
f127e61e MD |
1672 | TP_FIELDS( |
1673 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1674 | ctf_integer(ino_t, ino, inode->i_ino) | |
1675 | ctf_integer(long long, partial, partial_cluster) | |
1676 | ctf_integer(ext4_lblk_t, start, start) | |
1677 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1678 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1679 | ctf_integer(short, ee_len, ext4_ext_get_actual_len(ex)) | |
1680 | ) | |
00be8842 MD |
1681 | ) |
1682 | ||
1683 | #else | |
1684 | ||
3bc29f0a | 1685 | LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf, |
b87700e3 AG |
1686 | TP_PROTO(struct inode *inode, ext4_lblk_t start, |
1687 | struct ext4_extent *ex, ext4_fsblk_t partial_cluster), | |
1688 | ||
1689 | TP_ARGS(inode, start, ex, partial_cluster), | |
1690 | ||
f127e61e MD |
1691 | TP_FIELDS( |
1692 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1693 | ctf_integer(ino_t, ino, inode->i_ino) | |
1694 | ctf_integer(long long, partial, partial_cluster) | |
1695 | ctf_integer(ext4_lblk_t, start, start) | |
1696 | ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) | |
1697 | ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) | |
1698 | ctf_integer(short, ee_len, ext4_ext_get_actual_len(ex)) | |
1699 | ) | |
b87700e3 AG |
1700 | ) |
1701 | ||
00be8842 MD |
1702 | #endif |
1703 | ||
3bc29f0a | 1704 | LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_idx, |
b87700e3 AG |
1705 | TP_PROTO(struct inode *inode, ext4_fsblk_t pblk), |
1706 | ||
1707 | TP_ARGS(inode, pblk), | |
1708 | ||
f127e61e MD |
1709 | TP_FIELDS( |
1710 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1711 | ctf_integer(ino_t, ino, inode->i_ino) | |
1712 | ctf_integer(ext4_fsblk_t, pblk, pblk) | |
1713 | ) | |
b87700e3 AG |
1714 | ) |
1715 | ||
5f4c791e | 1716 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1717 | |
3bc29f0a | 1718 | LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space, |
00be8842 MD |
1719 | TP_PROTO(struct inode *inode, ext4_lblk_t start, |
1720 | ext4_lblk_t end, int depth), | |
1721 | ||
1722 | TP_ARGS(inode, start, end, depth), | |
1723 | ||
f127e61e MD |
1724 | TP_FIELDS( |
1725 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1726 | ctf_integer(ino_t, ino, inode->i_ino) | |
1727 | ctf_integer(ext4_lblk_t, start, start) | |
1728 | ctf_integer(ext4_lblk_t, end, end) | |
1729 | ctf_integer(int, depth, depth) | |
1730 | ) | |
00be8842 MD |
1731 | ) |
1732 | ||
1733 | #else | |
1734 | ||
3bc29f0a | 1735 | LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space, |
b87700e3 AG |
1736 | TP_PROTO(struct inode *inode, ext4_lblk_t start, int depth), |
1737 | ||
1738 | TP_ARGS(inode, start, depth), | |
1739 | ||
f127e61e MD |
1740 | TP_FIELDS( |
1741 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1742 | ctf_integer(ino_t, ino, inode->i_ino) | |
1743 | ctf_integer(ext4_lblk_t, start, start) | |
1744 | ctf_integer(int, depth, depth) | |
1745 | ) | |
b87700e3 AG |
1746 | ) |
1747 | ||
00be8842 MD |
1748 | #endif |
1749 | ||
5f4c791e | 1750 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,20,0) || \ |
3395f24e | 1751 | LTTNG_RHEL_KERNEL_RANGE(4,18,0,147,0,0, 4,19,0,0,0,0)) |
85957268 MJ |
1752 | |
1753 | LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done, | |
1754 | TP_PROTO(struct inode *inode, ext4_lblk_t start, ext4_lblk_t end, | |
1755 | int depth, struct partial_cluster *pc, __le16 eh_entries), | |
1756 | ||
1757 | TP_ARGS(inode, start, end, depth, pc, eh_entries), | |
1758 | ||
1759 | TP_FIELDS( | |
1760 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1761 | ctf_integer(ino_t, ino, inode->i_ino) | |
1762 | ctf_integer(ext4_lblk_t, start, start) | |
1763 | ctf_integer(ext4_lblk_t, end, end) | |
1764 | ctf_integer(int, depth, depth) | |
1765 | ctf_integer(unsigned short, eh_entries, le16_to_cpu(eh_entries)) | |
1766 | ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu) | |
1767 | ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk) | |
1768 | ctf_integer(int, pc_state, pc->state) | |
1769 | ) | |
1770 | ) | |
1771 | ||
5f4c791e | 1772 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1773 | |
3bc29f0a | 1774 | LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done, |
00be8842 MD |
1775 | TP_PROTO(struct inode *inode, ext4_lblk_t start, ext4_lblk_t end, |
1776 | int depth, long long partial, __le16 eh_entries), | |
1777 | ||
1778 | TP_ARGS(inode, start, end, depth, partial, eh_entries), | |
1779 | ||
f127e61e MD |
1780 | TP_FIELDS( |
1781 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1782 | ctf_integer(ino_t, ino, inode->i_ino) | |
1783 | ctf_integer(ext4_lblk_t, start, start) | |
1784 | ctf_integer(ext4_lblk_t, end, end) | |
1785 | ctf_integer(int, depth, depth) | |
1786 | ctf_integer(long long, partial, partial) | |
1787 | ctf_integer(unsigned short, eh_entries, le16_to_cpu(eh_entries)) | |
1788 | ) | |
00be8842 MD |
1789 | ) |
1790 | ||
1791 | #else | |
1792 | ||
3bc29f0a | 1793 | LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done, |
b87700e3 AG |
1794 | TP_PROTO(struct inode *inode, ext4_lblk_t start, int depth, |
1795 | ext4_lblk_t partial, unsigned short eh_entries), | |
1796 | ||
1797 | TP_ARGS(inode, start, depth, partial, eh_entries), | |
1798 | ||
f127e61e MD |
1799 | TP_FIELDS( |
1800 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1801 | ctf_integer(ino_t, ino, inode->i_ino) | |
1802 | ctf_integer(ext4_lblk_t, start, start) | |
1803 | ctf_integer(int, depth, depth) | |
1804 | ctf_integer(ext4_lblk_t, partial, partial) | |
1805 | ctf_integer(unsigned short, eh_entries, eh_entries) | |
1806 | ) | |
b87700e3 | 1807 | ) |
00be8842 MD |
1808 | |
1809 | #endif | |
1810 | ||
1811 | #endif | |
1812 | ||
5f4c791e | 1813 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,12,0)) |
39aee4a0 | 1814 | |
3bc29f0a | 1815 | LTTNG_TRACEPOINT_EVENT_CLASS(ext4__es_extent, |
39aee4a0 MD |
1816 | TP_PROTO(struct inode *inode, struct extent_status *es), |
1817 | ||
1818 | TP_ARGS(inode, es), | |
1819 | ||
f127e61e MD |
1820 | TP_FIELDS( |
1821 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1822 | ctf_integer(ino_t, ino, inode->i_ino) | |
1823 | ctf_integer(ext4_lblk_t, lblk, es->es_lblk) | |
1824 | ctf_integer(ext4_lblk_t, len, es->es_len) | |
1825 | ctf_integer(ext4_fsblk_t, pblk, ext4_es_pblock(es)) | |
1826 | ctf_integer(char, status, ext4_es_status(es)) | |
1827 | ) | |
39aee4a0 MD |
1828 | ) |
1829 | ||
3bc29f0a | 1830 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__es_extent, ext4_es_insert_extent, |
39aee4a0 MD |
1831 | TP_PROTO(struct inode *inode, struct extent_status *es), |
1832 | ||
1833 | TP_ARGS(inode, es) | |
1834 | ) | |
1835 | ||
3bc29f0a | 1836 | LTTNG_TRACEPOINT_EVENT_INSTANCE(ext4__es_extent, ext4_es_cache_extent, |
39aee4a0 MD |
1837 | TP_PROTO(struct inode *inode, struct extent_status *es), |
1838 | ||
1839 | TP_ARGS(inode, es) | |
1840 | ) | |
1841 | ||
5f4c791e | 1842 | #elif (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,11,0)) |
00be8842 | 1843 | |
3bc29f0a | 1844 | LTTNG_TRACEPOINT_EVENT(ext4_es_insert_extent, |
00be8842 MD |
1845 | TP_PROTO(struct inode *inode, struct extent_status *es), |
1846 | ||
1847 | TP_ARGS(inode, es), | |
1848 | ||
f127e61e MD |
1849 | TP_FIELDS( |
1850 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1851 | ctf_integer(ino_t, ino, inode->i_ino) | |
1852 | ctf_integer(ext4_lblk_t, lblk, es->es_lblk) | |
1853 | ctf_integer(ext4_lblk_t, len, es->es_len) | |
1854 | ctf_integer(ext4_fsblk_t, pblk, ext4_es_pblock(es)) | |
1855 | ctf_integer(char, status, ext4_es_status(es) >> 60) | |
1856 | ) | |
00be8842 MD |
1857 | ) |
1858 | ||
3bc29f0a | 1859 | LTTNG_TRACEPOINT_EVENT(ext4_es_remove_extent, |
00be8842 MD |
1860 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_lblk_t len), |
1861 | ||
1862 | TP_ARGS(inode, lblk, len), | |
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(loff_t, lblk, lblk) | |
1868 | ctf_integer(loff_t, len, len) | |
1869 | ) | |
00be8842 MD |
1870 | ) |
1871 | ||
3bc29f0a | 1872 | LTTNG_TRACEPOINT_EVENT(ext4_es_find_delayed_extent_range_enter, |
00be8842 MD |
1873 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk), |
1874 | ||
1875 | TP_ARGS(inode, lblk), | |
1876 | ||
f127e61e MD |
1877 | TP_FIELDS( |
1878 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1879 | ctf_integer(ino_t, ino, inode->i_ino) | |
1880 | ctf_integer(ext4_lblk_t, lblk, lblk) | |
1881 | ) | |
00be8842 MD |
1882 | ) |
1883 | ||
3bc29f0a | 1884 | LTTNG_TRACEPOINT_EVENT(ext4_es_find_delayed_extent_range_exit, |
00be8842 MD |
1885 | TP_PROTO(struct inode *inode, struct extent_status *es), |
1886 | ||
1887 | TP_ARGS(inode, es), | |
1888 | ||
f127e61e MD |
1889 | TP_FIELDS( |
1890 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1891 | ctf_integer(ino_t, ino, inode->i_ino) | |
1892 | ctf_integer(ext4_lblk_t, lblk, es->es_lblk) | |
1893 | ctf_integer(ext4_lblk_t, len, es->es_len) | |
1894 | ctf_integer(ext4_fsblk_t, pblk, ext4_es_pblock(es)) | |
1895 | ctf_integer(char, status, ext4_es_status(es) >> 60) | |
1896 | ) | |
00be8842 MD |
1897 | ) |
1898 | ||
3bc29f0a | 1899 | LTTNG_TRACEPOINT_EVENT(ext4_es_lookup_extent_enter, |
00be8842 MD |
1900 | TP_PROTO(struct inode *inode, ext4_lblk_t lblk), |
1901 | ||
1902 | TP_ARGS(inode, lblk), | |
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, lblk) | |
1908 | ) | |
00be8842 MD |
1909 | ) |
1910 | ||
3bc29f0a | 1911 | LTTNG_TRACEPOINT_EVENT(ext4_es_lookup_extent_exit, |
00be8842 MD |
1912 | TP_PROTO(struct inode *inode, struct extent_status *es, |
1913 | int found), | |
1914 | ||
1915 | TP_ARGS(inode, es, found), | |
1916 | ||
f127e61e MD |
1917 | TP_FIELDS( |
1918 | ctf_integer(dev_t, dev, inode->i_sb->s_dev) | |
1919 | ctf_integer(ino_t, ino, inode->i_ino) | |
1920 | ctf_integer(ext4_lblk_t, lblk, es->es_lblk) | |
1921 | ctf_integer(ext4_lblk_t, len, es->es_len) | |
1922 | ctf_integer(ext4_fsblk_t, pblk, ext4_es_pblock(es)) | |
1923 | ctf_integer(char, status, ext4_es_status(es) >> 60) | |
1924 | ctf_integer(int, found, found) | |
1925 | ) | |
00be8842 MD |
1926 | ) |
1927 | ||
3bc29f0a | 1928 | LTTNG_TRACEPOINT_EVENT(ext4_es_shrink_enter, |
00be8842 MD |
1929 | TP_PROTO(struct super_block *sb, int nr_to_scan, int cache_cnt), |
1930 | ||
1931 | TP_ARGS(sb, nr_to_scan, cache_cnt), | |
1932 | ||
f127e61e MD |
1933 | TP_FIELDS( |
1934 | ctf_integer(dev_t, dev, sb->s_dev) | |
1935 | ctf_integer(int, nr_to_scan, nr_to_scan) | |
1936 | ctf_integer(int, cache_cnt, cache_cnt) | |
1937 | ) | |
00be8842 MD |
1938 | ) |
1939 | ||
3bc29f0a | 1940 | LTTNG_TRACEPOINT_EVENT(ext4_es_shrink_exit, |
00be8842 MD |
1941 | TP_PROTO(struct super_block *sb, int shrunk_nr, int cache_cnt), |
1942 | ||
1943 | TP_ARGS(sb, shrunk_nr, cache_cnt), | |
1944 | ||
f127e61e MD |
1945 | TP_FIELDS( |
1946 | ctf_integer(dev_t, dev, sb->s_dev) | |
1947 | ctf_integer(int, shrunk_nr, shrunk_nr) | |
1948 | ctf_integer(int, cache_cnt, cache_cnt) | |
1949 | ) | |
00be8842 MD |
1950 | ) |
1951 | ||
b87700e3 AG |
1952 | #endif |
1953 | ||
5f4c791e | 1954 | #if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,10,0)) |
e68322f3 MJ |
1955 | LTTNG_TRACEPOINT_EVENT(ext4_fc_replay_scan, |
1956 | TP_PROTO(struct super_block *sb, int error, int off), | |
1957 | ||
1958 | TP_ARGS(sb, error, off), | |
1959 | ||
1960 | TP_FIELDS( | |
1961 | ctf_integer(dev_t, dev, sb->s_dev) | |
1962 | ctf_integer(int, error, error) | |
1963 | ctf_integer(int, off, off) | |
1964 | ) | |
1965 | ) | |
1966 | ||
1967 | LTTNG_TRACEPOINT_EVENT(ext4_fc_replay, | |
1968 | TP_PROTO(struct super_block *sb, int tag, int ino, int priv1, int priv2), | |
1969 | ||
1970 | TP_ARGS(sb, tag, ino, priv1, priv2), | |
1971 | ||
1972 | TP_FIELDS( | |
1973 | ctf_integer(dev_t, dev, sb->s_dev) | |
1974 | ctf_integer(int, tag, tag) | |
1975 | ctf_integer(int, ino, ino) | |
1976 | ctf_integer(int, priv1, priv1) | |
1977 | ctf_integer(int, priv2, priv2) | |
1978 | ) | |
1979 | ) | |
1980 | #endif | |
1981 | ||
3bc29f0a | 1982 | #endif /* LTTNG_TRACE_EXT4_H */ |
b87700e3 AG |
1983 | |
1984 | /* This part must be outside protection */ | |
3b4aafcb | 1985 | #include <lttng/define_trace.h> |