Commit 4cc21a00 authored by Johannes Thumshirn's avatar Johannes Thumshirn Committed by Jens Axboe
Browse files

block: add tracepoint for blk_zone_update_request_bio



Add a tracepoint in blk_zone_update_request_bio() to trace the bio sector
update on ZONE APPEND completions.

An example for this tracepoint is as follows:

<idle>-0 [001] d.h1.  381.746444: blk_zone_update_request_bio: 259,5 ZAS 131072 () 1048832 + 256 none,0,0 [swapper/1]

Reviewed-by: default avatarDamien Le Moal <dlemoal@kernel.org>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
Reviewed-by: default avatarChaitanya Kulkarni <kch@nvidia.com>
Reviewed-by: default avatarBart Van Assche <bvanassche@acm.org>
Signed-off-by: default avatarJohannes Thumshirn <johannes.thumshirn@wdc.com>
Link: https://lore.kernel.org/r/20250715115324.53308-4-johannes.thumshirn@wdc.com


Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 5022dae7
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -17,6 +17,8 @@
#include <linux/refcount.h>
#include <linux/mempool.h>

#include <trace/events/block.h>

#include "blk.h"
#include "blk-mq-sched.h"
#include "blk-mq-debugfs.h"
@@ -1198,6 +1200,7 @@ void blk_zone_append_update_request_bio(struct request *rq, struct bio *bio)
	 * lookup the zone write plug.
	 */
	bio->bi_iter.bi_sector = rq->__sector;
	trace_blk_zone_append_update_request_bio(rq);
}

void blk_zone_write_plug_bio_endio(struct bio *bio)
+11 −0
Original line number Diff line number Diff line
@@ -404,6 +404,17 @@ DEFINE_EVENT(block_bio, block_getrq,
	TP_ARGS(bio)
);

/**
 * block_zone_update_request_bio - update the bio sector after a zone append
 * @bio: the completed block IO operation
 *
 * Update the bio's bi_sector after a zone append command has been completed.
 */
DEFINE_EVENT(block_rq, blk_zone_append_update_request_bio,
	     TP_PROTO(struct request *rq),
	     TP_ARGS(rq)
);

/**
 * block_plug - keep operations requests in request queue
 * @q: request queue to plug