From: Ming Lei ming.lei@redhat.com
stable inclusion from stable-5.10.50 commit 512106ae2355813a5eb84e8dc908628d52856890 bugzilla: 174522 https://gitee.com/openeuler/kernel/issues/I4DNFY
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=...
--------------------------------
[ Upstream commit cb9516be7708a2a18ec0a19fe3a225b5b3bc92c7 ]
Commit 6e6fcbc27e77 ("blk-mq: support batching dispatch in case of io") starts to support io batching submission by using hctx->dispatch_busy.
However, blk_mq_update_dispatch_busy() isn't changed to update hctx->dispatch_busy in that commit, so fix the issue by updating hctx->dispatch_busy in case of real scheduler.
Reported-by: Jan Kara jack@suse.cz Reviewed-by: Jan Kara jack@suse.cz Fixes: 6e6fcbc27e77 ("blk-mq: support batching dispatch in case of io") Signed-off-by: Ming Lei ming.lei@redhat.com Link: https://lore.kernel.org/r/20210625020248.1630497-1-ming.lei@redhat.com Signed-off-by: Jens Axboe axboe@kernel.dk Signed-off-by: Sasha Levin sashal@kernel.org Signed-off-by: Chen Jun chenjun102@huawei.com Acked-by: Weilong Chen chenweilong@huawei.com Signed-off-by: Chen Jun chenjun102@huawei.com --- block/blk-mq.c | 3 --- 1 file changed, 3 deletions(-)
diff --git a/block/blk-mq.c b/block/blk-mq.c index b0d247193bcf..501599124fc4 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -1241,9 +1241,6 @@ static void blk_mq_update_dispatch_busy(struct blk_mq_hw_ctx *hctx, bool busy) { unsigned int ewma;
- if (hctx->queue->elevator) - return; - ewma = hctx->dispatch_busy;
if (!ewma && !busy)