Commit 4022bfd6 authored by Bart Van Assche's avatar Bart Van Assche Committed by Martin K. Petersen

scsi: sym53c8xx_2: Move the SCSI pointer to private command data

Set .cmd_size in the SCSI host template instead of using the SCSI pointer
from struct scsi_cmnd. This patch prepares for removal of the SCSI pointer
from struct scsi_cmnd.

Link: https://lore.kernel.org/r/20220218195117.25689-45-bvanassche@acm.orgReviewed-by: default avatarJohannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: default avatarHannes Reinecke <hare@suse.de>
Reviewed-by: default avatarHimanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: default avatarBart Van Assche <bvanassche@acm.org>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent c1ea387d
...@@ -118,7 +118,7 @@ struct sym_ucmd { /* Override the SCSI pointer structure */ ...@@ -118,7 +118,7 @@ struct sym_ucmd { /* Override the SCSI pointer structure */
struct completion *eh_done; /* SCSI error handling */ struct completion *eh_done; /* SCSI error handling */
}; };
#define SYM_UCMD_PTR(cmd) ((struct sym_ucmd *)(&(cmd)->SCp)) #define SYM_UCMD_PTR(cmd) ((struct sym_ucmd *)scsi_cmd_priv(cmd))
#define SYM_SOFTC_PTR(cmd) sym_get_hcb(cmd->device->host) #define SYM_SOFTC_PTR(cmd) sym_get_hcb(cmd->device->host)
/* /*
...@@ -127,7 +127,6 @@ struct sym_ucmd { /* Override the SCSI pointer structure */ ...@@ -127,7 +127,6 @@ struct sym_ucmd { /* Override the SCSI pointer structure */
void sym_xpt_done(struct sym_hcb *np, struct scsi_cmnd *cmd) void sym_xpt_done(struct sym_hcb *np, struct scsi_cmnd *cmd)
{ {
struct sym_ucmd *ucmd = SYM_UCMD_PTR(cmd); struct sym_ucmd *ucmd = SYM_UCMD_PTR(cmd);
BUILD_BUG_ON(sizeof(struct scsi_pointer) < sizeof(struct sym_ucmd));
if (ucmd->eh_done) if (ucmd->eh_done)
complete(ucmd->eh_done); complete(ucmd->eh_done);
...@@ -1630,6 +1629,7 @@ static struct scsi_host_template sym2_template = { ...@@ -1630,6 +1629,7 @@ static struct scsi_host_template sym2_template = {
.module = THIS_MODULE, .module = THIS_MODULE,
.name = "sym53c8xx", .name = "sym53c8xx",
.info = sym53c8xx_info, .info = sym53c8xx_info,
.cmd_size = sizeof(struct sym_ucmd),
.queuecommand = sym53c8xx_queue_command, .queuecommand = sym53c8xx_queue_command,
.slave_alloc = sym53c8xx_slave_alloc, .slave_alloc = sym53c8xx_slave_alloc,
.slave_configure = sym53c8xx_slave_configure, .slave_configure = sym53c8xx_slave_configure,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment