Skip to content

Commit

Permalink
IB/srp: Remove stale connection retry mechanism
Browse files Browse the repository at this point in the history
Attempting to connect three times may be insufficient after an
initiator system tries to relogin, especially if the relogin
attempt occurs before the SRP target service ID has been
registered. Since the srp_daemon retries a failed login attempt
anyway, remove the stale connection retry mechanism.

Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Sagi Grimberg <sagig@mellanox.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
  • Loading branch information
Bart Van Assche authored and Christoph Hellwig committed Nov 12, 2014
1 parent 394c595 commit 205619f
Showing 1 changed file with 3 additions and 13 deletions.
16 changes: 3 additions & 13 deletions drivers/infiniband/ulp/srp/ib_srp.c
Original file line number Diff line number Diff line change
Expand Up @@ -904,7 +904,6 @@ static void srp_rport_delete(struct srp_rport *rport)

static int srp_connect_target(struct srp_target_port *target)
{
int retries = 3;
int ret;

WARN_ON_ONCE(target->connected);
Expand Down Expand Up @@ -945,19 +944,10 @@ static int srp_connect_target(struct srp_target_port *target)
break;

case SRP_STALE_CONN:
/* Our current CM id was stale, and is now in timewait.
* Try to reconnect with a new one.
*/
if (!retries-- || srp_new_cm_id(target)) {
shost_printk(KERN_ERR, target->scsi_host, PFX
"giving up on stale connection\n");
target->status = -ECONNRESET;
return target->status;
}

shost_printk(KERN_ERR, target->scsi_host, PFX
"retrying stale connection\n");
break;
"giving up on stale connection\n");
target->status = -ECONNRESET;
return target->status;

default:
return target->status;
Expand Down

0 comments on commit 205619f

Please sign in to comment.