All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bart Van Assche <bvanassche@acm.org>
To: "Martin K . Petersen" <martin.petersen@oracle.com>,
	"James E . J . Bottomley" <jejb@linux.vnet.ibm.com>
Cc: linux-scsi@vger.kernel.org, Christoph Hellwig <hch@lst.de>,
	Bart Van Assche <bvanassche@acm.org>,
	Johannes Thumshirn <johannes.thumshirn@wdc.com>,
	Hannes Reinecke <hare@suse.de>, Daniel Wagner <dwagner@suse.de>
Subject: [PATCH 03/20] Rename scsi_softirq_done() into scsi_complete()
Date: Tue, 13 Apr 2021 10:06:57 -0700	[thread overview]
Message-ID: <20210413170714.2119-4-bvanassche@acm.org> (raw)
In-Reply-To: <20210413170714.2119-1-bvanassche@acm.org>

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. Because
that made the name of that function misleading, rename it into
scsi_complete().

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>
---
 drivers/scsi/scsi_lib.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index 985ed427445f..c4d6157e8051 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -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,

  parent reply	other threads:[~2021-04-13 17:07 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-13 17:06 [PATCH 00/20] SCSI patches for kernel v5.13 Bart Van Assche
2021-04-13 17:06 ` [PATCH 01/20] Make the scsi_alloc_sgtables() documentation more accurate Bart Van Assche
2021-04-13 17:06 ` [PATCH 02/20] Remove an incorrect comment Bart Van Assche
2021-04-13 17:06 ` Bart Van Assche [this message]
2021-04-13 17:06 ` [PATCH 04/20] Modify the scsi_send_eh_cmnd() return value for the SDEV_BLOCK case Bart Van Assche
2021-04-13 17:06 ` [PATCH 05/20] Introduce enum scsi_disposition Bart Van Assche
2021-04-13 17:07 ` [PATCH 06/20] aacraid: Remove an unused function Bart Van Assche
2021-04-13 17:07 ` [PATCH 07/20] libfc: Fix a format specifier Bart Van Assche
2021-04-13 17:07 ` [PATCH 08/20] fcoe: Suppress a compiler warning Bart Van Assche
2021-04-13 17:07 ` [PATCH 09/20] iscsi: Suppress two clang format mismatch warnings Bart Van Assche
2021-04-13 17:59   ` James Bottomley
2021-04-13 18:57     ` Bart Van Assche
2021-04-13 17:07 ` [PATCH 10/20] mpt3sas: Fix two kernel-doc headers Bart Van Assche
2021-04-13 17:07 ` [PATCH 11/20] myrb: Remove unused functions Bart Van Assche
2021-04-13 17:07 ` [PATCH 12/20] myrs: " Bart Van Assche
2021-04-13 17:07 ` [PATCH 13/20] qla4xxx: Remove an unused function Bart Van Assche
2021-04-13 17:07 ` [PATCH 14/20] smartpqi: Remove unused functions Bart Van Assche
2021-04-13 17:07 ` [PATCH 15/20] 53c700: Open-code status_byte(u8) calls Bart Van Assche
2021-04-13 17:07 ` [PATCH 16/20] dc395x: " Bart Van Assche
2021-04-13 17:07 ` [PATCH 17/20] sd: Introduce a new local variable in sd_check_events() Bart Van Assche
2021-04-13 17:07 ` [PATCH 18/20] target: Compare explicitly with SAM_STAT_GOOD Bart Van Assche
2021-04-13 17:40   ` Mike Christie
2021-04-13 17:07 ` [PATCH 19/20] target: Fix several format specifiers Bart Van Assche
2021-04-13 17:47   ` Mike Christie
2021-04-13 18:19     ` Bart Van Assche
2021-04-13 17:07 ` [PATCH 20/20] target/tcm_fc: Fix a kernel-doc header Bart Van Assche

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210413170714.2119-4-bvanassche@acm.org \
    --to=bvanassche@acm.org \
    --cc=dwagner@suse.de \
    --cc=hare@suse.de \
    --cc=hch@lst.de \
    --cc=jejb@linux.vnet.ibm.com \
    --cc=johannes.thumshirn@wdc.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.