Conditional statements are faster than indirect calls. Hence call scsi_done() directly. Signed-off-by: Bart Van Assche <bvanassche@xxxxxxx> --- drivers/scsi/initio.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/scsi/initio.c b/drivers/scsi/initio.c index 9b75e19a9bab..183f95758636 100644 --- a/drivers/scsi/initio.c +++ b/drivers/scsi/initio.c @@ -2615,8 +2615,6 @@ static int i91u_queuecommand_lck(struct scsi_cmnd *cmd, struct initio_host *host = (struct initio_host *) cmd->device->host->hostdata; struct scsi_ctrl_blk *cmnd; - cmd->scsi_done = done; - cmnd = initio_alloc_scb(host); if (!cmnd) return SCSI_MLQUEUE_HOST_BUSY; @@ -2788,7 +2786,7 @@ static void i91uSCBPost(u8 * host_mem, u8 * cblk_mem) cmnd->result = cblk->tastat | (cblk->hastat << 16); i91u_unmap_scb(host->pci_dev, cmnd); - cmnd->scsi_done(cmnd); /* Notify system DONE */ + scsi_done(cmnd); /* Notify system DONE */ initio_release_scb(host, cblk); /* Release SCB for current channel */ }