Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

scsi: qedf: Call scsi_done() directly

Conditional statements are faster than indirect calls. Hence call
scsi_done() directly.

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

authored by

Bart Van Assche and committed by
Martin K. Petersen
ef697683 3ca2385a

+6 -13
+6 -13
drivers/scsi/qedf/qedf_io.c
··· 947 947 "Number of SG elements %d exceeds what hardware limitation of %d.\n", 948 948 num_sgs, QEDF_MAX_BDS_PER_CMD); 949 949 sc_cmd->result = DID_ERROR; 950 - sc_cmd->scsi_done(sc_cmd); 950 + scsi_done(sc_cmd); 951 951 return 0; 952 952 } 953 953 ··· 957 957 "Returning DNC as unloading or stop io, flags 0x%lx.\n", 958 958 qedf->flags); 959 959 sc_cmd->result = DID_NO_CONNECT << 16; 960 - sc_cmd->scsi_done(sc_cmd); 960 + scsi_done(sc_cmd); 961 961 return 0; 962 962 } 963 963 ··· 966 966 "Completing sc_cmd=%p DID_NO_CONNECT as MSI-X is not enabled.\n", 967 967 sc_cmd); 968 968 sc_cmd->result = DID_NO_CONNECT << 16; 969 - sc_cmd->scsi_done(sc_cmd); 969 + scsi_done(sc_cmd); 970 970 return 0; 971 971 } 972 972 ··· 976 976 "fc_remote_port_chkready failed=0x%x for port_id=0x%06x.\n", 977 977 rval, rport->port_id); 978 978 sc_cmd->result = rval; 979 - sc_cmd->scsi_done(sc_cmd); 979 + scsi_done(sc_cmd); 980 980 return 0; 981 981 } 982 982 ··· 1313 1313 1314 1314 io_req->sc_cmd = NULL; 1315 1315 sc_cmd->SCp.ptr = NULL; 1316 - sc_cmd->scsi_done(sc_cmd); 1316 + scsi_done(sc_cmd); 1317 1317 kref_put(&io_req->refcount, qedf_release_cmd); 1318 1318 } 1319 1319 ··· 1386 1386 goto bad_scsi_ptr; 1387 1387 } 1388 1388 1389 - if (!sc_cmd->scsi_done) { 1390 - QEDF_ERR(&qedf->dbg_ctx, 1391 - "sc_cmd->scsi_done for sc_cmd %p is NULL.\n", 1392 - sc_cmd); 1393 - goto bad_scsi_ptr; 1394 - } 1395 - 1396 1389 qedf_unmap_sg_list(qedf, io_req); 1397 1390 1398 1391 sc_cmd->result = result << 16; ··· 1410 1417 1411 1418 io_req->sc_cmd = NULL; 1412 1419 sc_cmd->SCp.ptr = NULL; 1413 - sc_cmd->scsi_done(sc_cmd); 1420 + scsi_done(sc_cmd); 1414 1421 kref_put(&io_req->refcount, qedf_release_cmd); 1415 1422 return; 1416 1423