Re: [PATCH V10 3/4] blk-mq: issue directly with bypass 'false' in blk_mq_sched_insert_requests

From: Jens Axboe
Date: Thu Dec 06 2018 - 10:19:33 EST


On 12/5/18 8:32 PM, Jianchao Wang wrote:
> It is not necessary to issue request directly with bypass 'true'
> in blk_mq_sched_insert_requests and handle the non-issued requests
> itself. Just set bypass to 'false' and let blk_mq_try_issue_directly
> handle them totally. Remove the blk_rq_can_direct_dispatch check,
> because blk_mq_try_issue_directly can handle it well.
>
> With respect to commit_rqs hook, we only need to care about the last
> request's result. If it is inserted, invoke commit_rqs.

I don't think there's anything wrong, functionally, with this patch,
but I question the logic of continuing to attempt direct dispatch
if we fail one. If we get busy on one, for instance, we should just
insert that one to the dispatch list, and insert the rest of the list
normally.


--
Jens Axboe