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

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

index 9d179cd15bb8486e2b28ce7b83c4b6e07998f36d..6e1595b32bc01bfe6b4791c5d8a73f65f7bc8894 100644 (file)
@@ -512,7 +512,7 @@ static irqreturn_t atp870u_intr_handle(int irq, void *dev_id)
                        scsi_dma_unmap(workreq);
 
                        spin_lock_irqsave(dev->host->host_lock, flags);
-                       (*workreq->scsi_done) (workreq);
+                       scsi_done(workreq);
 #ifdef ED_DBGP
                           printk("workreq->scsi_done\n");
 #endif
@@ -654,17 +654,6 @@ static int atp870u_queuecommand_lck(struct scsi_cmnd *req_p,
                return 0;
        }
 
-       if (done) {
-               req_p->scsi_done = done;
-       } else {
-#ifdef ED_DBGP
-               printk( "atp870u_queuecommand: done can't be NULL\n");
-#endif
-               req_p->result = 0;
-               done(req_p);
-               return 0;
-       }
-
        /*
         *      Count new command
         */