scsi: Remove a blk_mq_run_hw_queues() call
authorBart Van Assche <bvanassche@acm.org>
Fri, 21 Jul 2023 17:27:29 +0000 (10:27 -0700)
committerJens Axboe <axboe@kernel.dk>
Tue, 25 Jul 2023 02:13:12 +0000 (20:13 -0600)
commitd42e2e3448a99c41c8489766eeb732d8d741d5be
tree9aea9ede944d3961a138b4be3d739acf5ae283c7
parentb5ca9acff553874aaf1faf176e076cbd7cc4aa0e
scsi: Remove a blk_mq_run_hw_queues() call

blk_mq_kick_requeue_list() calls blk_mq_run_hw_queues() asynchronously.
Leave out the direct blk_mq_run_hw_queues() call. This patch causes
scsi_run_queue() to call blk_mq_run_hw_queues() asynchronously instead
of synchronously. Since scsi_run_queue() is not called from the hot I/O
submission path, this patch does not affect the hot path.

This patch prepares for allowing blk_mq_run_hw_queue() to sleep if
BLK_MQ_F_BLOCKING has been set. scsi_run_queue() may be called from
atomic context and must not sleep. Hence the removal of the
blk_mq_run_hw_queues(q, false) call. See also scsi_unblock_requests().

Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: "Martin K. Petersen" <martin.petersen@oracle.com>
Link: https://lore.kernel.org/r/20230721172731.955724-3-bvanassche@acm.org
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/scsi/scsi_lib.c