On 10/8/25 22:29, Johannes Thumshirn wrote:
> I'm not sure if it makes sense to do completion tracing here. At least 
> we cannot do it in the endio handler as usual.
> 
> One thing to get the error and the duration would be the following:
> 
> int blkdev_zone_mgmt(struct block_device *bdev, enum req_op op,
>                       sector_t sector, sector_t nr_sectors)
> {
> 
>          /* [...] */
> 
>          trace_blkdev_zone_mgmt(bio, nr_sectors);
>          ret = submit_bio_wait(bio);
> 
> +     trace_blkdev_zone_mgmt_completion(bio, nr_sectors, bio->bi_error);
>          bio_put(bio);

That does seem OK to me. Maybe try and see how it looks ?
Though the request alloc, insert, dispatch and completion for this BIO will
still be traced, right ? If these events show correctly that this is a zone
management command (and which one it is), then we should not need the above.


-- 
Damien Le Moal
Western Digital Research

Reply via email to