scsi: core: Rename scsi_softirq_done() into scsi_complete()
authorBart Van Assche <bvanassche@acm.org>
Thu, 15 Apr 2021 22:08:09 +0000 (15:08 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 16 Apr 2021 02:44:40 +0000 (22:44 -0400)
Commit 320ae51feed5 ("blk-mq: new multi-queue block IO queueing mechanism";
v3.13) introduced a code path that calls the blk-mq completion function
from interrupt context. scsi-mq was introduced by commit d285203cf647
("scsi: add support for a blk-mq based I/O path."; v3.17).

Since the introduction of scsi-mq, scsi_softirq_done() can be called from
interrupt context. That made the name of the function misleading, rename it
to scsi_complete().

Link: https://lore.kernel.org/r/20210415220826.29438-4-bvanassche@acm.org
Cc: Christoph Hellwig <hch@lst.de>
Cc: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Cc: Hannes Reinecke <hare@suse.de>
Cc: Daniel Wagner <dwagner@suse.de>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/scsi_lib.c

index c092b1be38d7003f4b3fc806e8fc8314cbc61352..8ffb789de6f7a01461fb395927295e4a11c650bc 100644 (file)
@@ -1434,7 +1434,11 @@ static bool scsi_mq_lld_busy(struct request_queue *q)
        return false;
 }
 
-static void scsi_softirq_done(struct request *rq)
+/*
+ * Block layer request completion callback. May be called from interrupt
+ * context.
+ */
+static void scsi_complete(struct request *rq)
 {
        struct scsi_cmnd *cmd = blk_mq_rq_to_pdu(rq);
        int disposition;
@@ -1889,7 +1893,7 @@ static const struct blk_mq_ops scsi_mq_ops_no_commit = {
        .get_budget     = scsi_mq_get_budget,
        .put_budget     = scsi_mq_put_budget,
        .queue_rq       = scsi_queue_rq,
-       .complete       = scsi_softirq_done,
+       .complete       = scsi_complete,
        .timeout        = scsi_timeout,
 #ifdef CONFIG_BLK_DEBUG_FS
        .show_rq        = scsi_show_rq,
@@ -1919,7 +1923,7 @@ static const struct blk_mq_ops scsi_mq_ops = {
        .put_budget     = scsi_mq_put_budget,
        .queue_rq       = scsi_queue_rq,
        .commit_rqs     = scsi_commit_rqs,
-       .complete       = scsi_softirq_done,
+       .complete       = scsi_complete,
        .timeout        = scsi_timeout,
 #ifdef CONFIG_BLK_DEBUG_FS
        .show_rq        = scsi_show_rq,