aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/scsi/scsi_cmnd.h
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2021-10-21 08:06:05 +0200
committerJens Axboe <axboe@kernel.dk>2021-10-22 08:33:57 -0600
commit68ec3b819a5d600a4ede8b596761dccac9f39ebc (patch)
tree3c5e400ee170381870fd834cada2f60c5d795302 /include/scsi/scsi_cmnd.h
parentbsg-lib: initialize the bsg_job in bsg_transport_sg_io_fn (diff)
downloadwireguard-linux-68ec3b819a5d600a4ede8b596761dccac9f39ebc.tar.xz
wireguard-linux-68ec3b819a5d600a4ede8b596761dccac9f39ebc.zip
scsi: add a scsi_alloc_request helper
Add a new helper that calls blk_get_request and initializes the scsi_request to avoid the indirect call through ->.initialize_rq_fn. Note that this makes the pktcdvd driver depend on the SCSI core, but given that only SCSI devices support SCSI passthrough requests that is not a functional change. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Hannes Reinecke <hare@suse.de> Link: https://lore.kernel.org/r/20211021060607.264371-6-hch@lst.de Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/scsi/scsi_cmnd.h')
-rw-r--r--include/scsi/scsi_cmnd.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/scsi/scsi_cmnd.h b/include/scsi/scsi_cmnd.h
index eaf04c9a1dfc..31078063afac 100644
--- a/include/scsi/scsi_cmnd.h
+++ b/include/scsi/scsi_cmnd.h
@@ -396,4 +396,7 @@ static inline unsigned scsi_transfer_length(struct scsi_cmnd *scmd)
extern void scsi_build_sense(struct scsi_cmnd *scmd, int desc,
u8 key, u8 asc, u8 ascq);
+struct request *scsi_alloc_request(struct request_queue *q,
+ unsigned int op, blk_mq_req_flags_t flags);
+
#endif /* _SCSI_SCSI_CMND_H */