linux-trace-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] blktrace: Add 'P' identifier to mark I/O with REQ_POLLED flag
@ 2024-08-23  7:25 Yongpeng Yang
  2024-08-27  2:15 ` Chao Yu
  0 siblings, 1 reply; 2+ messages in thread
From: Yongpeng Yang @ 2024-08-23  7:25 UTC (permalink / raw)
  To: Jens Axboe; +Cc: linux-trace-kernel, linux-block, Chao Yu, Yongpeng Yang

blk_fill_rwbs function currently does not recognize REQ_POLLED I/O,
it's not convenient to trace the I/O handling process on the
HCTX_TYPE_POLL type hardware queue. Add a 'P' identifier to 'rwbs'
to mark such I/O for tracing.

Signed-off-by: Yongpeng Yang <yangyongpeng1@oppo.com>
---
 kernel/trace/blktrace.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
index 8fd292d34d89..69b7857d0189 100644
--- a/kernel/trace/blktrace.c
+++ b/kernel/trace/blktrace.c
@@ -1908,6 +1908,8 @@ void blk_fill_rwbs(char *rwbs, blk_opf_t opf)
 		rwbs[i++] = 'S';
 	if (opf & REQ_META)
 		rwbs[i++] = 'M';
+	if (opf & REQ_POLLED)
+		rwbs[i++] = 'P';
 
 	rwbs[i] = '\0';
 }
-- 
2.40.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] blktrace: Add 'P' identifier to mark I/O with REQ_POLLED flag
  2024-08-23  7:25 [PATCH] blktrace: Add 'P' identifier to mark I/O with REQ_POLLED flag Yongpeng Yang
@ 2024-08-27  2:15 ` Chao Yu
  0 siblings, 0 replies; 2+ messages in thread
From: Chao Yu @ 2024-08-27  2:15 UTC (permalink / raw)
  To: Yongpeng Yang, Jens Axboe; +Cc: linux-trace-kernel, linux-block

On 2024/8/23 15:25, Yongpeng Yang wrote:
> blk_fill_rwbs function currently does not recognize REQ_POLLED I/O,
> it's not convenient to trace the I/O handling process on the
> HCTX_TYPE_POLL type hardware queue. Add a 'P' identifier to 'rwbs'
> to mark such I/O for tracing.
> 
> Signed-off-by: Yongpeng Yang <yangyongpeng1@oppo.com>
> ---
>   kernel/trace/blktrace.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
> index 8fd292d34d89..69b7857d0189 100644
> --- a/kernel/trace/blktrace.c
> +++ b/kernel/trace/blktrace.c
> @@ -1908,6 +1908,8 @@ void blk_fill_rwbs(char *rwbs, blk_opf_t opf)
>   		rwbs[i++] = 'S';
>   	if (opf & REQ_META)
>   		rwbs[i++] = 'M';
> +	if (opf & REQ_POLLED)
> +		rwbs[i++] = 'P';

DECLARE_EVENT_CLASS(bio,
	TP_PROTO(struct bio *bio),
	TP_ARGS(bio),

	TP_STRUCT__entry(
		__field(dev_t,		dev			)
		__field(sector_t,	sector			)
		__field(unsigned int,	nr_sector		)
		__array(char,		rwbs,	6		)
	),

Not sure, maybe we need to expand one more byte for rwbs array, if
REQ_POLLED flag can be Ored w/ other flags.

Thanks,

>   
>   	rwbs[i] = '\0';
>   }


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-08-27  2:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-23  7:25 [PATCH] blktrace: Add 'P' identifier to mark I/O with REQ_POLLED flag Yongpeng Yang
2024-08-27  2:15 ` Chao Yu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).