Hi, >> @@ -333,13 +333,14 @@ TRACE_EVENT(io_uring_complete, >> */ >> TRACE_EVENT(io_uring_submit_sqe, >> >> - TP_PROTO(void *ctx, u8 opcode, u64 user_data, bool force_nonblock, >> - bool sq_thread), >> + TP_PROTO(void *ctx, void *req, u8 opcode, u64 user_data, >> + bool force_nonblock, bool sq_thread), >> >> - TP_ARGS(ctx, opcode, user_data, force_nonblock, sq_thread), >> + TP_ARGS(ctx, req, opcode, user_data, force_nonblock, sq_thread), >> >> TP_STRUCT__entry ( >> __field( void *, ctx ) >> + __field( void *, req ) >> __field( u8, opcode ) >> __field( u64, user_data ) >> __field( bool, force_nonblock ) >> @@ -348,26 +349,42 @@ TRACE_EVENT(io_uring_submit_sqe, >> >> TP_fast_assign( >> __entry->ctx = ctx; >> + __entry->req = req; >> __entry->opcode = opcode; >> __entry->user_data = user_data; >> __entry->force_nonblock = force_nonblock; >> __entry->sq_thread = sq_thread; >> ), >> >> - TP_printk("ring %p, op %d, data 0x%llx, non block %d, sq_thread %d", >> - __entry->ctx, __entry->opcode, >> - (unsigned long long) __entry->user_data, >> - __entry->force_nonblock, __entry->sq_thread) >> + TP_printk("ring %p, req %p, op %d, data 0x%llx, non block %d, " >> + "sq_thread %d", __entry->ctx, __entry->req, >> + __entry->opcode, (unsigned long long)__entry->user_data, >> + __entry->force_nonblock, __entry->sq_thread) >> ); If that gets changed, could be also include the personality id and flags here, and maybe also translated the opcode and flags to human readable strings? metze