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

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

index 3b2eb6c..3978c3d 100644 (file)
@@ -1720,7 +1720,7 @@ out:
        }
 
        cmnd->result = (((host_status) << 16) | scsi_status);
-       cmnd->scsi_done(cmnd);
+       scsi_done(cmnd);
 
        /* Wake up waiting threads */
        csio_scsi_cmnd(req) = NULL;
@@ -1748,7 +1748,7 @@ csio_scsi_cbfn(struct csio_hw *hw, struct csio_ioreq *req)
                }
 
                cmnd->result = (((host_status) << 16) | scsi_status);
-               cmnd->scsi_done(cmnd);
+               scsi_done(cmnd);
                csio_scsi_cmnd(req) = NULL;
                CSIO_INC_STATS(csio_hw_to_scsim(hw), n_tot_success);
        } else {
@@ -1876,7 +1876,7 @@ err:
        return rv;
 
 err_done:
-       cmnd->scsi_done(cmnd);
+       scsi_done(cmnd);
        return 0;
 }
 
@@ -1979,7 +1979,7 @@ inval_scmnd:
                spin_unlock_irq(&hw->lock);
 
                cmnd->result = (DID_ERROR << 16);
-               cmnd->scsi_done(cmnd);
+               scsi_done(cmnd);
 
                return FAILED;
        }