Messages in this thread Patch in this message | | | From | John Garry <> | Subject | [PATCH RFC v2 06/24] scsi: add scsi_cmd_from_priv() | Date | Wed, 11 Mar 2020 00:25:32 +0800 |
| |
From: Hannes Reinecke <hare@suse.com>
Add a functon to retrieve the scsi_cmnd structure from the driver private allocation data.
Signed-off-by: Hannes Reinecke <hare@suse.com> --- include/scsi/scsi_cmnd.h | 10 ++++++++++ 1 file changed, 10 insertions(+)
diff --git a/include/scsi/scsi_cmnd.h b/include/scsi/scsi_cmnd.h index 82a4499539b3..c73280b3706d 100644 --- a/include/scsi/scsi_cmnd.h +++ b/include/scsi/scsi_cmnd.h @@ -153,6 +153,16 @@ static inline void *scsi_cmd_priv(struct scsi_cmnd *cmd) return cmd + 1; } +/* + * Return the scsi_cmnd structure located before the driver + * private allocation. Only works if cmd_size is set in the + * host template. + */ +static inline struct scsi_cmnd *scsi_cmd_from_priv(void *priv) +{ + return priv - sizeof(struct scsi_cmnd); +} + /* make sure not to use it with passthrough commands */ static inline struct scsi_driver *scsi_cmd_to_driver(struct scsi_cmnd *cmd) { -- 2.17.1
| |