scsi: hptiop: Call scsi_done() directly
authorBart Van Assche <bvanassche@acm.org>
Thu, 7 Oct 2021 20:28:32 +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-38-bvanassche@acm.org
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/hptiop.c

index 61cda7b..f18f6a6 100644 (file)
@@ -769,7 +769,7 @@ static void hptiop_finish_scsi_req(struct hptiop_hba *hba, u32 tag,
 
 skip_resid:
        dprintk("scsi_done(%p)\n", scp);
-       scp->scsi_done(scp);
+       scsi_done(scp);
        free_req(hba, &hba->reqs[tag]);
 }
 
@@ -1002,9 +1002,6 @@ static int hptiop_queuecommand_lck(struct scsi_cmnd *scp,
        int sg_count = 0;
        struct hptiop_request *_req;
 
-       BUG_ON(!done);
-       scp->scsi_done = done;
-
        _req = get_req(hba);
        if (_req == NULL) {
                dprintk("hptiop_queuecmd : no free req\n");
@@ -1059,7 +1056,7 @@ static int hptiop_queuecommand_lck(struct scsi_cmnd *scp,
 
 cmd_done:
        dprintk("scsi_done(scp=%p)\n", scp);
-       scp->scsi_done(scp);
+       scsi_done(scp);
        return 0;
 }