Conditional statements are faster than indirect calls. Hence call scsi_done() directly. Signed-off-by: Bart Van Assche <bvanassche@xxxxxxx> --- drivers/scsi/stex.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/drivers/scsi/stex.c b/drivers/scsi/stex.c index f1ba7f5b52a8..2f96a2fdaa40 100644 --- a/drivers/scsi/stex.c +++ b/drivers/scsi/stex.c @@ -574,7 +574,7 @@ static void return_abnormal_state(struct st_hba *hba, int status) if (ccb->cmd) { scsi_dma_unmap(ccb->cmd); ccb->cmd->result = status << 16; - ccb->cmd->scsi_done(ccb->cmd); + scsi_done(ccb->cmd); ccb->cmd = NULL; } } @@ -688,8 +688,6 @@ stex_queuecommand_lck(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd *)) break; } - cmd->scsi_done = done; - tag = scsi_cmd_to_rq(cmd)->tag; if (unlikely(tag >= host->can_queue)) @@ -764,7 +762,7 @@ static void stex_scsi_done(struct st_ccb *ccb) } cmd->result = result; - cmd->scsi_done(cmd); + scsi_done(cmd); } static void stex_copy_data(struct st_ccb *ccb,