Commit eccd8801 authored by Dylan Yudaken's avatar Dylan Yudaken Committed by Jens Axboe
Browse files

io_uring: add trace event for running task work



This is useful for investigating if task_work is batching

Signed-off-by: default avatarDylan Yudaken <dylany@fb.com>
Link: https://lore.kernel.org/r/20220622134028.2013417-8-dylany@fb.com


Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 3a0c037b
Loading
Loading
Loading
Loading
+30 −0
Original line number Diff line number Diff line
@@ -600,6 +600,36 @@ TRACE_EVENT(io_uring_cqe_overflow,
		  __entry->cflags, __entry->ocqe)
);

/*
 * io_uring_task_work_run - ran task work
 *
 * @tctx:		pointer to a io_uring_task
 * @count:		how many functions it ran
 * @loops:		how many loops it ran
 *
 */
TRACE_EVENT(io_uring_task_work_run,

	TP_PROTO(void *tctx, unsigned int count, unsigned int loops),

	TP_ARGS(tctx, count, loops),

	TP_STRUCT__entry (
		__field(  void *,		tctx		)
		__field(  unsigned int,		count		)
		__field(  unsigned int,		loops		)
	),

	TP_fast_assign(
		__entry->tctx		= tctx;
		__entry->count		= count;
		__entry->loops		= loops;
	),

	TP_printk("tctx %p, count %u, loops %u",
		 __entry->tctx, __entry->count, __entry->loops)
);

#endif /* _TRACE_IO_URING_H */

/* This part must be outside protection */