aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/libfc/fc_rport.c
diff options
context:
space:
mode:
authorHillf Danton <dhillf@gmail.com>2011-01-28 16:03:26 -0800
committerJames Bottomley <James.Bottomley@suse.de>2011-02-12 10:57:22 -0600
commit28a4af1e43047531ab612564e32ab9969c9dd965 (patch)
tree2c91320742f7d6110d034b7627684f4090724d3b /drivers/scsi/libfc/fc_rport.c
parent[SCSI] libfc: Return a valid return code in fc_fcp_pkt_abort() (diff)
downloadlinux-dev-28a4af1e43047531ab612564e32ab9969c9dd965.tar.xz
linux-dev-28a4af1e43047531ab612564e32ab9969c9dd965.zip
[SCSI] libfc: Cleanup return paths in fc_rport_error_retry
This patch makes it so that we only have one call to fc_rport_error. This patch does not completely consolidate return statements, there is still one return used when not calling fc_rport_error, but alternative solutions made the code more confusing. [ Patch modified by Robert Love ] [ Patch title and commit message edited by Robert Love to make it more relevant ] Signed-off-by: Hillf Danton <dhillf@gmail.com> Signed-off-by: Robert Love <robert.w.love@intel.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/libfc/fc_rport.c')
-rw-r--r--drivers/scsi/libfc/fc_rport.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/scsi/libfc/fc_rport.c b/drivers/scsi/libfc/fc_rport.c
index a7175adab32d..325bc429dda4 100644
--- a/drivers/scsi/libfc/fc_rport.c
+++ b/drivers/scsi/libfc/fc_rport.c
@@ -575,7 +575,7 @@ static void fc_rport_error_retry(struct fc_rport_priv *rdata,
/* make sure this isn't an FC_EX_CLOSED error, never retry those */
if (PTR_ERR(fp) == -FC_EX_CLOSED)
- return fc_rport_error(rdata, fp);
+ goto out;
if (rdata->retries < rdata->local_port->max_rport_retry_count) {
FC_RPORT_DBG(rdata, "Error %ld in state %s, retrying\n",
@@ -588,7 +588,8 @@ static void fc_rport_error_retry(struct fc_rport_priv *rdata,
return;
}
- return fc_rport_error(rdata, fp);
+out:
+ fc_rport_error(rdata, fp);
}
/**