On 01/26/2016 06:10 PM, Himanshu Madhani wrote: > From: Chad Dupuis <chad.dupuis@xxxxxxxxxx> > > If we fail to queue an srb for an async login we should set the > relogin flag so it will be retried as the reason for the queuing > failure was most likely transient. Failure to do this can lead to > failed paths as login is never retried if the relogin flag is not > set. > > Signed-off-by: Chad Dupuis <chad.dupuis@xxxxxxxxxx> > Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx> > --- > drivers/scsi/qla2xxx/qla_init.c | 6 +++++- > 1 files changed, 5 insertions(+), 1 deletions(-) > > diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c > index 8001c89..184b6b6 100644 > --- a/drivers/scsi/qla2xxx/qla_init.c > +++ b/drivers/scsi/qla2xxx/qla_init.c > @@ -157,8 +157,12 @@ qla2x00_async_login(struct scsi_qla_host *vha, fc_port_t *fcport, > if (data[1] & QLA_LOGIO_LOGIN_RETRIED) > lio->u.logio.flags |= SRB_LOGIN_RETRIED; > rval = qla2x00_start_sp(sp); > - if (rval != QLA_SUCCESS) > + if (rval != QLA_SUCCESS) { > + fcport->flags &= ~FCF_ASYNC_SENT; > + fcport->flags |= FCF_LOGIN_NEEDED; > + set_bit(RELOGIN_NEEDED, &vha->dpc_flags); > goto done_free_sp; > + } > > ql_dbg(ql_dbg_disc, vha, 0x2072, > "Async-login - hdl=%x, loopid=%x portid=%02x%02x%02x " > Reviewed-by: Hannes Reinecke <hare@xxxxxxxx> Cheers, Hannes -- Dr. Hannes Reinecke Teamlead Storage & Networking hare@xxxxxxx +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 21284 (AG Nürnberg) -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html