[PATCH 00/21] blktrace: Add user-space support for zoned command tracing

Johannes Thumshirn posted 21 patches 5 months ago
There is a newer version of this series
act_mask.c     |   4 +-
blkiomon.c     |  15 +-
blkparse.c     | 450 ++++++++++++++++++++++++++++++++++---------------
blkparse_fmt.c | 105 +++++++++---
blkrawverify.c |  14 +-
blktrace.c     |  40 ++++-
blktrace.h     |  64 +++++--
blktrace_api.h |  54 +++++-
8 files changed, 560 insertions(+), 186 deletions(-)
[PATCH 00/21] blktrace: Add user-space support for zoned command tracing
Posted by Johannes Thumshirn 5 months ago
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.

Johannes Thumshirn (21):
  fix comment for struct blk_trace_setup:
  add definitions for BLKTRACESETUP2
  call BLKTRACESETUP2 ioctl per default to setup a trace
  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

 act_mask.c     |   4 +-
 blkiomon.c     |  15 +-
 blkparse.c     | 450 ++++++++++++++++++++++++++++++++++---------------
 blkparse_fmt.c | 105 +++++++++---
 blkrawverify.c |  14 +-
 blktrace.c     |  40 ++++-
 blktrace.h     |  64 +++++--
 blktrace_api.h |  54 +++++-
 8 files changed, 560 insertions(+), 186 deletions(-)

-- 
2.51.0
Re: [PATCH 00/21] blktrace: Add user-space support for zoned command tracing
Posted by Masami Hiramatsu (Google) 4 months, 4 weeks ago
Hi Johannes,

On Tue,  9 Sep 2025 13:07:02 +0200
Johannes Thumshirn <johannes.thumshirn@wdc.com> wrote:

> 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.

I guess this series are patches against for user-space blktrace tool

https://git.kernel.dk/?p=blktrace.git

And the updates depends on the kernel side update of your series;

https://lore.kernel.org/all/20250909110611.75559-1-johannes.thumshirn@wdc.com/

Right?
I'm not sure how the blktrace tool development is managed, but please make
sure this series is not for the kernel. (ah, both has blktrace: tag, hmmm)

Thank you,

> 
> 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.
> 
> Johannes Thumshirn (21):
>   fix comment for struct blk_trace_setup:
>   add definitions for BLKTRACESETUP2
>   call BLKTRACESETUP2 ioctl per default to setup a trace
>   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
> 
>  act_mask.c     |   4 +-
>  blkiomon.c     |  15 +-
>  blkparse.c     | 450 ++++++++++++++++++++++++++++++++++---------------
>  blkparse_fmt.c | 105 +++++++++---
>  blkrawverify.c |  14 +-
>  blktrace.c     |  40 ++++-
>  blktrace.h     |  64 +++++--
>  blktrace_api.h |  54 +++++-
>  8 files changed, 560 insertions(+), 186 deletions(-)
> 
> -- 
> 2.51.0
> 


-- 
Masami Hiramatsu (Google) <mhiramat@kernel.org>
Re: [PATCH 00/21] blktrace: Add user-space support for zoned command tracing
Posted by Johannes Thumshirn 4 months, 3 weeks ago
On 9/14/25 11:18 AM, Masami Hiramatsu wrote:
> Hi Johannes,
>
> On Tue,  9 Sep 2025 13:07:02 +0200
> Johannes Thumshirn <johannes.thumshirn@wdc.com> wrote:
>
>> 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.
> I guess this series are patches against for user-space blktrace tool
>
> https://git.kernel.dk/?p=blktrace.git
>
> And the updates depends on the kernel side update of your series;
>
> https://lore.kernel.org/all/20250909110611.75559-1-johannes.thumshirn@wdc.com/
>
> Right?
> I'm not sure how the blktrace tool development is managed, but please make
> sure this series is not for the kernel. (ah, both has blktrace: tag, hmmm)

You're right. I'll add a subject prefix for v2 so they can be better 
distinguished.

Thanks,
     Johannes