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

scsi: mpt3sas: Call scsi_done() directly

Conditional statements are faster than indirect calls. Hence call
scsi_done() directly.

Link: https://lore.kernel.org/r/20211007202923.2174984-53-bvanassche@acm.orgSigned-off-by: default avatarBart Van Assche <bvanassche@acm.org>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 1a30fd18
...@@ -3314,7 +3314,7 @@ scsih_abort(struct scsi_cmnd *scmd) ...@@ -3314,7 +3314,7 @@ scsih_abort(struct scsi_cmnd *scmd)
sdev_printk(KERN_INFO, scmd->device, sdev_printk(KERN_INFO, scmd->device,
"device been deleted! scmd(0x%p)\n", scmd); "device been deleted! scmd(0x%p)\n", scmd);
scmd->result = DID_NO_CONNECT << 16; scmd->result = DID_NO_CONNECT << 16;
scmd->scsi_done(scmd); scsi_done(scmd);
r = SUCCESS; r = SUCCESS;
goto out; goto out;
} }
...@@ -3390,7 +3390,7 @@ scsih_dev_reset(struct scsi_cmnd *scmd) ...@@ -3390,7 +3390,7 @@ scsih_dev_reset(struct scsi_cmnd *scmd)
sdev_printk(KERN_INFO, scmd->device, sdev_printk(KERN_INFO, scmd->device,
"device been deleted! scmd(0x%p)\n", scmd); "device been deleted! scmd(0x%p)\n", scmd);
scmd->result = DID_NO_CONNECT << 16; scmd->result = DID_NO_CONNECT << 16;
scmd->scsi_done(scmd); scsi_done(scmd);
r = SUCCESS; r = SUCCESS;
goto out; goto out;
} }
...@@ -3470,7 +3470,7 @@ scsih_target_reset(struct scsi_cmnd *scmd) ...@@ -3470,7 +3470,7 @@ scsih_target_reset(struct scsi_cmnd *scmd)
starget_printk(KERN_INFO, starget, starget_printk(KERN_INFO, starget,
"target been deleted! scmd(0x%p)\n", scmd); "target been deleted! scmd(0x%p)\n", scmd);
scmd->result = DID_NO_CONNECT << 16; scmd->result = DID_NO_CONNECT << 16;
scmd->scsi_done(scmd); scsi_done(scmd);
r = SUCCESS; r = SUCCESS;
goto out; goto out;
} }
...@@ -5030,7 +5030,7 @@ _scsih_flush_running_cmds(struct MPT3SAS_ADAPTER *ioc) ...@@ -5030,7 +5030,7 @@ _scsih_flush_running_cmds(struct MPT3SAS_ADAPTER *ioc)
scmd->result = DID_NO_CONNECT << 16; scmd->result = DID_NO_CONNECT << 16;
else else
scmd->result = DID_RESET << 16; scmd->result = DID_RESET << 16;
scmd->scsi_done(scmd); scsi_done(scmd);
} }
dtmprintk(ioc, ioc_info(ioc, "completing %d cmds\n", count)); dtmprintk(ioc, ioc_info(ioc, "completing %d cmds\n", count));
} }
...@@ -5139,13 +5139,13 @@ scsih_qcmd(struct Scsi_Host *shost, struct scsi_cmnd *scmd) ...@@ -5139,13 +5139,13 @@ scsih_qcmd(struct Scsi_Host *shost, struct scsi_cmnd *scmd)
sas_device_priv_data = scmd->device->hostdata; sas_device_priv_data = scmd->device->hostdata;
if (!sas_device_priv_data || !sas_device_priv_data->sas_target) { if (!sas_device_priv_data || !sas_device_priv_data->sas_target) {
scmd->result = DID_NO_CONNECT << 16; scmd->result = DID_NO_CONNECT << 16;
scmd->scsi_done(scmd); scsi_done(scmd);
return 0; return 0;
} }
if (!(_scsih_allow_scmd_to_device(ioc, scmd))) { if (!(_scsih_allow_scmd_to_device(ioc, scmd))) {
scmd->result = DID_NO_CONNECT << 16; scmd->result = DID_NO_CONNECT << 16;
scmd->scsi_done(scmd); scsi_done(scmd);
return 0; return 0;
} }
...@@ -5155,7 +5155,7 @@ scsih_qcmd(struct Scsi_Host *shost, struct scsi_cmnd *scmd) ...@@ -5155,7 +5155,7 @@ scsih_qcmd(struct Scsi_Host *shost, struct scsi_cmnd *scmd)
handle = sas_target_priv_data->handle; handle = sas_target_priv_data->handle;
if (handle == MPT3SAS_INVALID_DEVICE_HANDLE) { if (handle == MPT3SAS_INVALID_DEVICE_HANDLE) {
scmd->result = DID_NO_CONNECT << 16; scmd->result = DID_NO_CONNECT << 16;
scmd->scsi_done(scmd); scsi_done(scmd);
return 0; return 0;
} }
...@@ -5166,7 +5166,7 @@ scsih_qcmd(struct Scsi_Host *shost, struct scsi_cmnd *scmd) ...@@ -5166,7 +5166,7 @@ scsih_qcmd(struct Scsi_Host *shost, struct scsi_cmnd *scmd)
} else if (sas_target_priv_data->deleted) { } else if (sas_target_priv_data->deleted) {
/* device has been deleted */ /* device has been deleted */
scmd->result = DID_NO_CONNECT << 16; scmd->result = DID_NO_CONNECT << 16;
scmd->scsi_done(scmd); scsi_done(scmd);
return 0; return 0;
} else if (sas_target_priv_data->tm_busy || } else if (sas_target_priv_data->tm_busy ||
sas_device_priv_data->block) { sas_device_priv_data->block) {
...@@ -5909,7 +5909,7 @@ _scsih_io_done(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 msix_index, u32 reply) ...@@ -5909,7 +5909,7 @@ _scsih_io_done(struct MPT3SAS_ADAPTER *ioc, u16 smid, u8 msix_index, u32 reply)
scsi_dma_unmap(scmd); scsi_dma_unmap(scmd);
mpt3sas_base_free_smid(ioc, smid); mpt3sas_base_free_smid(ioc, smid);
scmd->scsi_done(scmd); scsi_done(scmd);
return 0; return 0;
} }
......
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