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,
next prev 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox