From: Bart Van Assche <bart.vanassche@sandisk.com>
To: "Martin K . Petersen" <martin.petersen@oracle.com>,
James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: linux-scsi@vger.kernel.org,
Bart Van Assche <bart.vanassche@sandisk.com>,
Christoph Hellwig <hch@lst.de>, Hannes Reinecke <hare@suse.com>
Subject: [PATCH 09/18] scsi: Change argument type of scsi_req_init()
Date: Fri, 19 May 2017 11:30:07 -0700 [thread overview]
Message-ID: <20170519183016.12646-10-bart.vanassche@sandisk.com> (raw)
In-Reply-To: <20170519183016.12646-1-bart.vanassche@sandisk.com>
Since scsi_req_init() works on a struct scsi_request, change the
argument type into struct scsi_request *.
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Hannes Reinecke <hare@suse.com>
---
block/scsi_ioctl.c | 10 +++++++---
drivers/ide/ide-probe.c | 2 +-
drivers/scsi/scsi_lib.c | 4 +++-
drivers/scsi/scsi_transport_sas.c | 2 +-
include/scsi/scsi_request.h | 2 +-
5 files changed, 13 insertions(+), 7 deletions(-)
diff --git a/block/scsi_ioctl.c b/block/scsi_ioctl.c
index f96c51f5df40..7440de44dd85 100644
--- a/block/scsi_ioctl.c
+++ b/block/scsi_ioctl.c
@@ -741,10 +741,14 @@ int scsi_cmd_blk_ioctl(struct block_device *bd, fmode_t mode,
}
EXPORT_SYMBOL(scsi_cmd_blk_ioctl);
-void scsi_req_init(struct request *rq)
+/**
+ * scsi_req_init - initialize certain fields of a scsi_request structure
+ * @req: Pointer to a scsi_request structure.
+ * Initializes .__cmd[], .cmd, .cmd_len and .sense_len but no other members
+ * of struct scsi_request.
+ */
+void scsi_req_init(struct scsi_request *req)
{
- struct scsi_request *req = scsi_req(rq);
-
memset(req->__cmd, 0, sizeof(req->__cmd));
req->cmd = req->__cmd;
req->cmd_len = BLK_MAX_CDB;
diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c
index 824eae707d25..5f77e31c9487 100644
--- a/drivers/ide/ide-probe.c
+++ b/drivers/ide/ide-probe.c
@@ -745,7 +745,7 @@ static void ide_initialize_rq(struct request *rq)
{
struct ide_request *req = blk_mq_rq_to_pdu(rq);
- scsi_req_init(rq);
+ scsi_req_init(&req->sreq);
req->sreq.sense = req->sense;
}
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index a294a010d585..efa5741cab02 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -1136,7 +1136,9 @@ EXPORT_SYMBOL(scsi_init_io);
/* Called from inside blk_get_request() */
static void scsi_initialize_rq(struct request *rq)
{
- scsi_req_init(rq);
+ struct scsi_cmnd *cmd = blk_mq_rq_to_pdu(rq);
+
+ scsi_req_init(&cmd->req);
}
/* Called after a request has been started. */
diff --git a/drivers/scsi/scsi_transport_sas.c b/drivers/scsi/scsi_transport_sas.c
index 6de65e73201d..fc049b0265ee 100644
--- a/drivers/scsi/scsi_transport_sas.c
+++ b/drivers/scsi/scsi_transport_sas.c
@@ -215,7 +215,7 @@ static void sas_host_release(struct device *dev)
static void sas_initialize_rq(struct request *rq)
{
- scsi_req_init(rq);
+ scsi_req_init(scsi_req(rq));
}
static int sas_bsg_initialize(struct Scsi_Host *shost, struct sas_rphy *rphy)
diff --git a/include/scsi/scsi_request.h b/include/scsi/scsi_request.h
index f0c76f9dc285..e0afa445ee4e 100644
--- a/include/scsi/scsi_request.h
+++ b/include/scsi/scsi_request.h
@@ -27,6 +27,6 @@ static inline void scsi_req_free_cmd(struct scsi_request *req)
kfree(req->cmd);
}
-void scsi_req_init(struct request *);
+void scsi_req_init(struct scsi_request *req);
#endif /* _SCSI_SCSI_REQUEST_H */
--
2.12.2
next prev parent reply other threads:[~2017-05-19 18:30 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-19 18:29 [PATCH 00/18] Unify and simplify SCSI request initialization Bart Van Assche
2017-05-19 18:29 ` [PATCH 01/18] block: Introduce blk_queue_cmd_size() Bart Van Assche
2017-05-21 6:54 ` Christoph Hellwig
2017-05-19 18:30 ` [PATCH 02/18] bsg: Check private request size before attaching to a queue Bart Van Assche
2017-05-21 6:32 ` Christoph Hellwig
2017-05-21 14:33 ` Bart Van Assche
2017-05-22 7:49 ` hch
2017-05-19 18:30 ` [PATCH 03/18] pktcdvd: " Bart Van Assche
2017-05-19 18:30 ` [PATCH 04/18] cdrom: " Bart Van Assche
2017-05-19 18:30 ` [PATCH 05/18] nfsd: Check private request size before submitting a SCSI request Bart Van Assche
2017-05-19 19:03 ` J . Bruce Fields
2017-05-19 18:30 ` [PATCH 06/18] scsi: Make scsi_ioctl_reset() pass the request queue pointer to blk_rq_init() Bart Van Assche
2017-05-21 6:50 ` Christoph Hellwig
2017-05-21 16:41 ` Bart Van Assche
2017-05-22 6:06 ` Hannes Reinecke
2017-05-22 7:54 ` hch
2017-05-22 8:46 ` Hannes Reinecke
2017-05-22 12:48 ` hch
2017-05-22 12:56 ` Hannes Reinecke
2017-05-22 13:00 ` hch
2017-05-19 18:30 ` [PATCH 07/18] block: Introduce request_queue.initialize_rq_fn() Bart Van Assche
2017-05-21 6:34 ` Christoph Hellwig
2017-05-22 17:07 ` Bart Van Assche
2017-05-19 18:30 ` [PATCH 08/18] block: Make scsi_req_init() calls implicit Bart Van Assche
2017-05-21 6:42 ` Christoph Hellwig
2017-05-19 18:30 ` Bart Van Assche [this message]
2017-05-21 6:43 ` [PATCH 09/18] scsi: Change argument type of scsi_req_init() Christoph Hellwig
2017-05-19 18:30 ` [PATCH 10/18] scsi: Only add commands to the device command list if required by the LLD Bart Van Assche
2017-05-21 6:44 ` Christoph Hellwig
2017-05-19 18:30 ` [PATCH 11/18] scsi: Move most of scsi_init_command() into scsi_initialize_rq() Bart Van Assche
2017-05-21 6:45 ` Christoph Hellwig
2017-05-21 6:46 ` Christoph Hellwig
2017-05-21 6:47 ` Christoph Hellwig
2017-05-19 18:30 ` [PATCH 12/18] scsi: Inline scsi_init_command() Bart Van Assche
2017-05-21 6:47 ` Christoph Hellwig
2017-05-19 18:30 ` [PATCH 13/18] scsi: Move sense buffer pointer initialization into scsi_initialize_rq() Bart Van Assche
2017-05-21 6:48 ` Christoph Hellwig
2017-05-19 18:30 ` [PATCH 14/18] scsi: Make scsi_initialize_rq() zero the entire struct scsi_cmnd Bart Van Assche
2017-05-21 6:49 ` Christoph Hellwig
2017-05-22 17:12 ` Bart Van Assche
2017-05-19 18:30 ` [PATCH 15/18] scsi: storvsc: Initialize driver-private command before using it Bart Van Assche
2017-05-21 6:51 ` Christoph Hellwig
2017-05-22 17:15 ` Bart Van Assche
2017-05-19 18:30 ` [PATCH 16/18] scsi-mq: Make behavior scsi_mq_prep_fn() closer to that of scsi_prep_fn() Bart Van Assche
2017-05-21 6:52 ` Christoph Hellwig
2017-05-19 18:30 ` [PATCH 17/18] scsi: Consolidate more initialization code Bart Van Assche
2017-05-21 6:52 ` Christoph Hellwig
2017-05-19 18:30 ` [PATCH 18/18] scsi_setup_fs_cmnd(): Call scsi_req_init() instead of open-coding it Bart Van Assche
2017-05-21 6:52 ` Christoph Hellwig
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=20170519183016.12646-10-bart.vanassche@sandisk.com \
--to=bart.vanassche@sandisk.com \
--cc=James.Bottomley@HansenPartnership.com \
--cc=hare@suse.com \
--cc=hch@lst.de \
--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