Skip to content

Commit 0196d6b

Browse files
Jianchao Wangaxboe
authored andcommitted
blk-mq: return when hctx is stopped in blk_mq_run_work_fn
If a hardware queue is stopped, it should not be run again before explicitly started. Ignore stopped queues in blk_mq_run_work_fn(), fixing a regression recently introduced when the START_ON_RUN bit was removed. Fixes: 15fe8a9 ("blk-mq: remove blk_mq_delay_queue()") Reviewed-by: Ming Lei <ming.lei@redhat.com> Reviewed-by: Bart Van Assche <bart.vanassche@wdc.com> Signed-off-by: Jianchao Wang <jianchao.w.wang@oracle.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
1 parent f956d08 commit 0196d6b

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

block/blk-mq.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1475,7 +1475,7 @@ static void blk_mq_run_work_fn(struct work_struct *work)
14751475
* If we are stopped, don't run the queue.
14761476
*/
14771477
if (test_bit(BLK_MQ_S_STOPPED, &hctx->state))
1478-
clear_bit(BLK_MQ_S_STOPPED, &hctx->state);
1478+
return;
14791479

14801480
__blk_mq_run_hw_queue(hctx);
14811481
}

0 commit comments

Comments
 (0)