Re: [PATCH v2 03/28] block: Introduce blk_zone_update_request_bio()

Bart Van Assche
2024-03-25T19:52:44Z

On 3/24/24 21:44, Damien Le Moal wrote:
> diff --git a/block/blk-mq.c b/block/blk-mq.c
> index 8aeb8e96f1a7..9e6e2a9a147c 100644
> --- a/block/blk-mq.c
> +++ b/block/blk-mq.c
> @@ -820,11 +820,11 @@ static void blk_complete_request(struct request *req)
> /* Completion has already been traced */
> bio_clear_flag(bio, BIO_TRACE_COMPLETION);
>
> - if (req_op(req) == REQ_OP_ZONE_APPEND)
> - bio->bi_iter.bi_sector = req->__sector;
> -
> - if (!is_flush)
> + if (!is_flush) {
> + blk_zone_update_request_bio(req, bio);
> bio_endio(bio);
> + }

The above change includes a behavior change. It seems wrong to me not
to call blk_zone_update_request_bio() for REQ_OP_ZONE_APPEND requests if
RQF_FLUSH_SEQ has been set.

Thanks,

Bart.