[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250925150427.67394-1-johannes.thumshirn@wdc.com>
Date: Thu, 25 Sep 2025 17:04:05 +0200
From: Johannes Thumshirn <johannes.thumshirn@....com>
To: Jens Axboe <axboe@...nel.dk>
Cc: Steven Rostedt <rostedt@...dmis.org>,
Masami Hiramatsu <mhiramat@...nel.org>,
Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
linux-block@...r.kernel.org,
linux-kernel@...r.kernel.org,
linux-trace-kernel@...r.kernel.org,
linux-btrace@...r.kernel.org,
John Garry <john.g.garry@...cle.com>,
Hannes Reinecke <hare@...e.de>,
Damien Le Moal <dlemoal@...nel.org>,
Christoph Hellwig <hch@....de>,
Naohiro Aota <naohiro.aota@....com>,
Shinichiro Kawasaki <shinichiro.kawasaki@....com>,
Chaitanya Kulkarni <chaitanyak@...dia.com>,
"Martin K . Petersen" <martin.petersen@...cle.com>,
Johannes Thumshirn <johannes.thumshirn@....com>
Subject: [PATCH blktrace v2 00/22] blktrace: Add user-space support for zoned command tracing
This patch series extends the user-space blktrace tools to support the new
trace events for zoned block device commands introduced in the corresponding
kernel patch series.
The updates include:
- Introduction of a new ioctl requesting the v2 version of the trace
- Definitions for new zoned operation trace events.
- Parsing support in blkparse for these events.
- Display of the new events with clear labeling (e.g., ZO, ZA, ZR).
- Backward-compatible changes that do not affect existing functionality.
These changes complement the kernel patches and allow full visibility into
zone management commands in blktrace output, enabling better analysis and
debugging of zoned storage workloads.
The updated blktrace utility will first issue the BLKTRACESETUP2 ioctl and if
it fails transpartently fall back to BLKTRACESETUP allowing backwards
compatibility.
Feedback and testing on additional device types are appreciated.
Changes to v1:
- Incorporated feedback from Chaitanya
- Add patch fixing a compiler warning at the beginning
Johannes Thumshirn (22):
blktrace: fix comment for struct blk_trace_setup:
blkparse: fix compiler warning
blktrace: add definitions for BLKTRACESETUP2
blktrace: change size of action to 64 bits
blktrace: add definitions for blk_io_trace2
blktrace: support protocol version 8
blkparse: pass magic to get_magic
blkparse: read 'magic' first
blkparse: factor out reading of a singe blk_io_trace event
blkparse: skip unsupported protocol versions
blkparse: make get_pdulen() take the pdu_len
blkiomon: read 'magic' first
blktrace: pass magic to CHECK_MAGIC macro
blktrace: pass magic to verify_trace
blktrace: rename trace_to_cpu to bit_trace_to_cpu
blkparse: use blk_io_trace2 internally
blkparse: natively parse blk_io_trace2
blkparse: parse zone (un)plug actions
blkparse: add zoned commands to fill_rwbs()
blkparse: parse zone management commands
blkparse: parse zone append completions
blktrace: call BLKTRACESETUP2 ioctl per default to setup a trace
act_mask.c | 4 +-
blkiomon.c | 15 +-
blkparse.c | 452 ++++++++++++++++++++++++++++++++++---------------
blkparse_fmt.c | 105 +++++++++---
blkrawverify.c | 14 +-
blktrace.c | 40 ++++-
blktrace.h | 64 +++++--
blktrace_api.h | 54 +++++-
8 files changed, 561 insertions(+), 187 deletions(-)
--
2.51.0
Powered by blists - more mailing lists