Skip to content

Commit

Permalink
io_uring: include cflags in completion trace event
Browse files Browse the repository at this point in the history
We should be including the completion flags for better introspection on
exactly what completion event was logged.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
  • Loading branch information
Jens Axboe committed Apr 11, 2021
1 parent 6c2450a commit 7471e1a
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 5 deletions.
2 changes: 1 addition & 1 deletion fs/io_uring.c
Original file line number Diff line number Diff line change
Expand Up @@ -1507,7 +1507,7 @@ static void __io_cqring_fill_event(struct io_kiocb *req, long res,
struct io_ring_ctx *ctx = req->ctx;
struct io_uring_cqe *cqe;

trace_io_uring_complete(ctx, req->user_data, res);
trace_io_uring_complete(ctx, req->user_data, res, cflags);

/*
* If we can't get a cq entry, userspace overflowed the
Expand Down
11 changes: 7 additions & 4 deletions include/trace/events/io_uring.h
Original file line number Diff line number Diff line change
Expand Up @@ -290,29 +290,32 @@ TRACE_EVENT(io_uring_fail_link,
* @ctx: pointer to a ring context structure
* @user_data: user data associated with the request
* @res: result of the request
* @cflags: completion flags
*
*/
TRACE_EVENT(io_uring_complete,

TP_PROTO(void *ctx, u64 user_data, long res),
TP_PROTO(void *ctx, u64 user_data, long res, unsigned cflags),

TP_ARGS(ctx, user_data, res),
TP_ARGS(ctx, user_data, res, cflags),

TP_STRUCT__entry (
__field( void *, ctx )
__field( u64, user_data )
__field( long, res )
__field( unsigned, cflags )
),

TP_fast_assign(
__entry->ctx = ctx;
__entry->user_data = user_data;
__entry->res = res;
__entry->cflags = cflags;
),

TP_printk("ring %p, user_data 0x%llx, result %ld",
TP_printk("ring %p, user_data 0x%llx, result %ld, cflags %x",
__entry->ctx, (unsigned long long)__entry->user_data,
__entry->res)
__entry->res, __entry->cflags)
);


Expand Down

0 comments on commit 7471e1a

Please sign in to comment.