Re: [PATCH V2] blktrace: log dropped REQ_OP_ZONE_XXX events ver1
From: Damien Le Moal <dlemoal@kernel.org>
Date: 2025-12-19 23:55:54
Also in:
linux-block
On 10/29/25 02:32, Chaitanya Kulkarni wrote:
quoted hunk ↗ jump to hunk
Add informational messages during blktrace setup when version 1 tools are used on kernels with CONFIG_BLK_DEV_ZONED enabled. This alerts users that REQ_OP_ZONE_* events will be dropped and suggests upgrading to blktrace tools version 2 or later. The warning is printed once during trace setup to inform users about the limitation without spamming the logs during tracing operations. Version 2 blktrace tools properly handle zone management operations (zone reset, zone open, zone close, zone finish, zone append) that were added for zoned block devices. Example output: blktests (master) # ./check blktrace blktrace/001 (blktrace zone management command tracing) [passed] runtime 0.110s ... 3.917s blktrace/002 (blktrace ftrace corruption with sysfs trace) [passed] runtime 0.333s ... 0.608s blktests (master) # dmesg -c [ 57.610592] blktrace: nullb0: blktrace events for REQ_OP_ZONE_XXX will be dropped [ 57.610603] blktrace: use blktrace tools version >= 2 to track REQ_OP_ZONE_XXX This helps users understand why zone operation traces may be missing when using older blktrace tool versions with modern kernels that support REQ_OP_ZONE_XXX in blktrace. Signed-off-by: Chaitanya Kulkarni <redacted> --- v1->v2 :- Remove the extra () around IS_ENABLED(CONFIG_BLK_DEV_ZONED). (Jens) Add a space after device name in first pr_info(). (Jens) --- kernel/trace/blktrace.c | 6 ++++++ 1 file changed, 6 insertions(+)diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c index e4f26ddb7ee2..4a37d9aa0481 100644 --- a/kernel/trace/blktrace.c +++ b/kernel/trace/blktrace.c@@ -739,6 +739,12 @@ static void blk_trace_setup_finalize(struct request_queue *q, */ strreplace(buts->name, '/', '_'); + if (version == 1 && IS_ENABLED(CONFIG_BLK_DEV_ZONED)) { + pr_info("%s: blktrace events for REQ_OP_ZONE_XXX will be dropped\n", + name); + pr_info("use blktrace tools version >= 2 to track REQ_OP_ZONE_XXX\n");
Please change REQ_OP_ZONE_XXX to "zone operations" in these messages. That is a little more general, so better I think since we also trace zone write plug/unplug events, which are not REQ_OP_ZONE_XXX. With that done, Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
+ } + bt->version = version; bt->act_mask = buts->act_mask; if (!bt->act_mask)
-- Damien Le Moal Western Digital Research