The information on whether eventfd is registered is not very useful and would result in the tracepoint being enclosed in an rcu_readlock in a later patch that tries to avoid ring quiesce for registering eventfd.
Showing the changes to include (1 of 2 files). Show all
Unified · Split
| @@ -57,10 +57,9 @@ TRACE_EVENT(io_uring_create, · 56 unmodified lines | |||
| 57 | * @opcode: describes which operation to perform | 57 | * @opcode: describes which operation to perform |
| 58 | * @nr_user_files: number of registered files | 58 | * @nr_user_files: number of registered files |
| 59 | * @nr_user_bufs: number of registered buffers | 59 | * @nr_user_bufs: number of registered buffers |
| 60 | * @cq_ev_fd: whether eventfs registered or not | ||
| 61 | * @ret: return code | 60 | * @ret: return code |
| 62 | * | 61 | * |
| 63 | * Allows to trace fixed files/buffers/eventfds, that could be registered to | 62 | * Allows to trace fixed files/buffers, that could be registered to |
| 64 | * avoid an overhead of getting references to them for every operation. This | 63 | * avoid an overhead of getting references to them for every operation. This |
| 65 | * event, together with io_uring_file_get, can provide a full picture of how | 64 | * event, together with io_uring_file_get, can provide a full picture of how |
| 66 | * much overhead one can reduce via fixing. | 65 | * much overhead one can reduce via fixing. |
| @@ -68,16 +67,15 @@ TRACE_EVENT(io_uring_create, · 1 unmodified line | |||
| 68 | TRACE_EVENT(io_uring_register, | 67 | TRACE_EVENT(io_uring_register, |
| 69 | 68 | ||
| 70 | TP_PROTO(void *ctx, unsigned opcode, unsigned nr_files, | 69 | TP_PROTO(void *ctx, unsigned opcode, unsigned nr_files, |
| 71 | unsigned nr_bufs, bool eventfd, long ret), | 70 | unsigned nr_bufs, long ret), |
| 72 | 71 | ||
| 73 | TP_ARGS(ctx, opcode, nr_files, nr_bufs, eventfd, ret), | 72 | TP_ARGS(ctx, opcode, nr_files, nr_bufs, ret), |
| 74 | 73 | ||
| 75 | TP_STRUCT__entry ( | 74 | TP_STRUCT__entry ( |
| 76 | __field( void *, ctx ) | 75 | __field( void *, ctx ) |
| 77 | __field( unsigned, opcode ) | 76 | __field( unsigned, opcode ) |
| 78 | __field( unsigned, nr_files ) | 77 | __field( unsigned, nr_files ) |
| 79 | __field( unsigned, nr_bufs ) | 78 | __field( unsigned, nr_bufs ) |
| 80 | __field( bool, eventfd ) | ||
| 81 | __field( long, ret ) | 79 | __field( long, ret ) |
| 82 | ), | 80 | ), |
| 83 | 81 | ||
| @@ -86,14 +84,13 @@ TRACE_EVENT(io_uring_register, · 2 unmodified lines | |||
| 86 | __entry->opcode = opcode; | 84 | __entry->opcode = opcode; |
| 87 | __entry->nr_files = nr_files; | 85 | __entry->nr_files = nr_files; |
| 88 | __entry->nr_bufs = nr_bufs; | 86 | __entry->nr_bufs = nr_bufs; |
| 89 | __entry->eventfd = eventfd; | ||
| 90 | __entry->ret = ret; | 87 | __entry->ret = ret; |
| 91 | ), | 88 | ), |
| 92 | 89 | ||
| 93 | TP_printk("ring %p, opcode %d, nr_user_files %d, nr_user_bufs %d, " | 90 | TP_printk("ring %p, opcode %d, nr_user_files %d, nr_user_bufs %d, " |
| 94 | "eventfd %d, ret %ld", | 91 | "ret %ld", |
| 95 | __entry->ctx, __entry->opcode, __entry->nr_files, | 92 | __entry->ctx, __entry->opcode, __entry->nr_files, |
| 96 | __entry->nr_bufs, __entry->eventfd, __entry->ret) | 93 | __entry->nr_bufs, __entry->ret) |
| 97 | ); | 94 | ); |
| 98 | 95 | ||
| 99 | /** | 96 | /** |