> On Jul 12, 2023, at 2:05 AM, Nilesh Javali <njavali@xxxxxxxxxxx> wrote: > > From: Quinn Tran <qutran@xxxxxxxxxxx> > > Connection does not resume after a host reset / > chip reset. The cause of the blockage is due to the FCF_ASYNC_ACTIVE > left on. The gnl command was interrupted by the chip reset. On > exiting the command, this flag should be turn off to allow relogin > to reoccur. Clear this flag to prevent blockage. > > Cc: stable@xxxxxxxxxxxxxxx > Fixes: 17e64648aa47 (“scsi: qla2xxx: Correct fcport flags handling”) > Signed-off-by: Quinn Tran <qutran@xxxxxxxxxxx> > Signed-off-by: Nilesh Javali <njavali@xxxxxxxxxxx> > --- > drivers/scsi/qla2xxx/qla_init.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c > index 725806ca9572..06c4e5215789 100644 > --- a/drivers/scsi/qla2xxx/qla_init.c > +++ b/drivers/scsi/qla2xxx/qla_init.c > @@ -1141,7 +1141,7 @@ int qla24xx_async_gnl(struct scsi_qla_host *vha, fc_port_t *fcport) > u16 *mb; > > if (!vha->flags.online || (fcport->flags & FCF_ASYNC_SENT)) > - return rval; > + goto done; > > ql_dbg(ql_dbg_disc, vha, 0x20d9, > "Async-gnlist WWPN %8phC \n", fcport->port_name); > @@ -1195,8 +1195,9 @@ int qla24xx_async_gnl(struct scsi_qla_host *vha, fc_port_t *fcport) > done_free_sp: > /* ref: INIT */ > kref_put(&sp->cmd_kref, qla2x00_sp_release); > + fcport->flags &= ~(FCF_ASYNC_SENT); > done: > - fcport->flags &= ~(FCF_ASYNC_ACTIVE | FCF_ASYNC_SENT); > + fcport->flags &= ~(FCF_ASYNC_ACTIVE); > return rval; > } > > -- > 2.23.1 > Reviewed-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx> -- Himanshu Madhani Oracle Linux Engineering