scsi: ibmvscsi: Call scsi_done() directly
authorBart Van Assche <bvanassche@acm.org>
Thu, 7 Oct 2021 20:28:33 +0000 (13:28 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Sun, 17 Oct 2021 01:28:47 +0000 (21:28 -0400)
Conditional statements are faster than indirect calls. Hence call
scsi_done() directly.

Link: https://lore.kernel.org/r/20211007202923.2174984-39-bvanassche@acm.org
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/ibmvscsi/ibmvfc.c

index 1f1586a..63f42ee 100644 (file)
@@ -1046,7 +1046,7 @@ static void ibmvfc_scsi_eh_done(struct ibmvfc_event *evt)
 
        if (cmnd) {
                scsi_dma_unmap(cmnd);
-               cmnd->scsi_done(cmnd);
+               scsi_done(cmnd);
        }
 
        ibmvfc_free_event(evt);
@@ -1848,7 +1848,7 @@ static void ibmvfc_scsi_done(struct ibmvfc_event *evt)
                        cmnd->result = (DID_ERROR << 16);
 
                scsi_dma_unmap(cmnd);
-               cmnd->scsi_done(cmnd);
+               scsi_done(cmnd);
        }
 
        ibmvfc_free_event(evt);
@@ -1934,7 +1934,7 @@ static int ibmvfc_queuecommand(struct Scsi_Host *shost, struct scsi_cmnd *cmnd)
        if (unlikely((rc = fc_remote_port_chkready(rport))) ||
            unlikely((rc = ibmvfc_host_chkready(vhost)))) {
                cmnd->result = rc;
-               cmnd->scsi_done(cmnd);
+               scsi_done(cmnd);
                return 0;
        }
 
@@ -1974,7 +1974,7 @@ static int ibmvfc_queuecommand(struct Scsi_Host *shost, struct scsi_cmnd *cmnd)
                            "Failed to map DMA buffer for command. rc=%d\n", rc);
 
        cmnd->result = DID_ERROR << 16;
-       cmnd->scsi_done(cmnd);
+       scsi_done(cmnd);
        return 0;
 }