Re: [PATCH v2 1/1] blk-mq: Inline request status checkers
- To: Pavel Begunkov <asml.silence@gmail.com>, Bart Van Assche <bvanassche@acm.org>, Josef Bacik <josef@toxicpanda.com>, Keith Busch <kbusch@kernel.org>, Christoph Hellwig <hch@lst.de>, Sagi Grimberg <sagi@grimberg.me>, linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, nbd@other.debian.org, linux-nvme@lists.infradead.org
- Subject: Re: [PATCH v2 1/1] blk-mq: Inline request status checkers
- From: Jens Axboe <axboe@kernel.dk>
- Date: Wed, 2 Oct 2019 07:09:28 -0600
- Message-id: <[🔎] e4fb245a-5587-866b-8bfa-927d0fb0801b@kernel.dk>
- In-reply-to: <6da099e2-7e29-3c7b-7682-df86835e9e8c@gmail.com>
- References: <1cd320dad54bd78cb6721f7fe8dd2e197b9fbfa2.1569830796.git.asml.silence@gmail.com> <e6fc239412811140c83de906b75689530661f65d.1569872122.git.asml.silence@gmail.com> <e4d452ad-da24-a1a9-7e2d-f9cd5d0733da@acm.org> <6da099e2-7e29-3c7b-7682-df86835e9e8c@gmail.com>
On 9/30/19 2:12 PM, Pavel Begunkov wrote:
> On 30/09/2019 22:53, Bart Van Assche wrote:
>> 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.
>
> Yep, looks too bulky.
>
> Jens, could you consider the first version?
Yes, first one is fine, I have applied it. Thanks.
--
Jens Axboe
Reply to: