Re: [PATCH v2 3/5] blk-mq: support batched queue_rqs() on shared tags queue

Ming Lei
2023-09-22T08:37:24Z

On Wed, Sep 13, 2023 at 03:16:14PM +0000, chengming.zhou@linux.dev wrote:
> From: Chengming Zhou <zhouchengming@bytedance.com>
>
> Since active requests have been accounted when allocate driver tags,
> we can remove this limit now.
>
> Signed-off-by: Chengming Zhou <zhouchengming@bytedance.com>
> ---
> block/blk-mq.c | 7 +------
> 1 file changed, 1 insertion(+), 6 deletions(-)
>
> diff --git a/block/blk-mq.c b/block/blk-mq.c
> index c209a7dddee3..68ce9357463b 100644
> --- a/block/blk-mq.c
> +++ b/block/blk-mq.c
> @@ -2781,13 +2781,8 @@ void blk_mq_flush_plug_list(struct blk_plug *plug, bool from_schedule)
> * If we do, we can dispatch the whole plug list in one go. We
> * already know at this point that all requests belong to the
> * same queue, caller must ensure that's the case.
> - *
> - * Since we pass off the full list to the driver at this point,
> - * we do not increment the active request count for the queue.
> - * Bypass shared tags for now because of that.
> */
> - if (q->mq_ops->queue_rqs &&
> - !(rq->mq_hctx->flags & BLK_MQ_F_TAG_QUEUE_SHARED)) {
> + if (q->mq_ops->queue_rqs) {
> blk_mq_run_dispatch_ops(q,
> __blk_mq_flush_plug_list(q, plug));
> if (rq_list_empty(plug->mq_list))

Reviewed-by: Ming Lei <ming.lei@redhat.com>

Thanks,
Ming