summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/fnic
diff options
context:
space:
mode:
authorKaran Tilak Kumar <kartilak@cisco.com>2020-11-20 18:33:37 -0800
committerMartin K. Petersen <martin.petersen@oracle.com>2020-11-23 22:38:40 -0500
commit3256b4682386298ec106c1d1896b064f6a291f88 (patch)
tree75920affb83d4f2c3f63b0900fd6c713ffc629f3 /drivers/scsi/fnic
parent74ae6d6a6805f9fe162e4527d8ff0f7d2f9bc0d0 (diff)
scsi: fnic: Validate io_req before others
We need to check for a valid io_req before we check other data. Also, remove redundant checks. Link: https://lore.kernel.org/r/20201121023337.19295-1-kartilak@cisco.com Reviewed-by: Arulprabhu Ponnusamy <arulponn@cisco.com> Co-developed-by: Satish Kharat <satishkh@cisco.com> Signed-off-by: Satish Kharat <satishkh@cisco.com> Signed-off-by: Karan Tilak Kumar <kartilak@cisco.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/fnic')
-rw-r--r--drivers/scsi/fnic/fnic.h2
-rw-r--r--drivers/scsi/fnic/fnic_scsi.c9
2 files changed, 5 insertions, 6 deletions
diff --git a/drivers/scsi/fnic/fnic.h b/drivers/scsi/fnic/fnic.h
index e4d399f41a0a..69f373b53132 100644
--- a/drivers/scsi/fnic/fnic.h
+++ b/drivers/scsi/fnic/fnic.h
@@ -39,7 +39,7 @@
#define DRV_NAME "fnic"
#define DRV_DESCRIPTION "Cisco FCoE HBA Driver"
-#define DRV_VERSION "1.6.0.52"
+#define DRV_VERSION "1.6.0.53"
#define PFX DRV_NAME ": "
#define DFX DRV_NAME "%d: "
diff --git a/drivers/scsi/fnic/fnic_scsi.c b/drivers/scsi/fnic/fnic_scsi.c
index 532c3c7ae372..36744968378f 100644
--- a/drivers/scsi/fnic/fnic_scsi.c
+++ b/drivers/scsi/fnic/fnic_scsi.c
@@ -1735,15 +1735,14 @@ void fnic_terminate_rport_io(struct fc_rport *rport)
continue;
}
- cmd_rport = starget_to_rport(scsi_target(sc->device));
- if (rport != cmd_rport) {
+ io_req = (struct fnic_io_req *)CMD_SP(sc);
+ if (!io_req) {
spin_unlock_irqrestore(io_lock, flags);
continue;
}
- io_req = (struct fnic_io_req *)CMD_SP(sc);
-
- if (!io_req || rport != cmd_rport) {
+ cmd_rport = starget_to_rport(scsi_target(sc->device));
+ if (rport != cmd_rport) {
spin_unlock_irqrestore(io_lock, flags);
continue;
}