Re: [PATCH v2 1/1] blk-mq: Inline request status checkers

From: Bart Van Assche
Date: Mon Sep 30 2019 - 16:49:18 EST


On 9/30/19 12:43 PM, Pavel Begunkov (Silence) wrote:
> @@ -282,7 +282,7 @@ static bool bt_tags_iter(struct sbitmap *bitmap, unsigned int bitnr, void *data)
> * test and set the bit before assining ->rqs[].
> */
> rq = tags->rqs[bitnr];
> - if (rq && blk_mq_request_started(rq))
> + if (rq && blk_mq_rq_state(rq) != MQ_RQ_IDLE)
> return iter_data->fn(rq, iter_data->data, reserved);
>
> return true>
> @@ -360,7 +360,7 @@ static bool blk_mq_tagset_count_completed_rqs(struct request *rq,
> {
> unsigned *count = data;
>
> - if (blk_mq_request_completed(rq))
> + if (blk_mq_rq_state(rq) == MQ_RQ_COMPLETE)
> (*count)++;
> return true;
> }

Changes like the above significantly reduce readability of the code in
the block layer core. I don't like this. I think this patch is a step
backwards instead of a step forwards.

Bart.