Comment # 9 on bug 1048942 from
(In reply to Hannes Reinecke from comment #8)
> Might be that you need this patch from the scsi mailing-list:
> 
> PATCH 4/5] qla2xxx: Changes to support N2N logins
> 
> Can you try?
> (Maybe it's worth pulling in the entire patchset ...)

The patches didn't help, so I instrumented the code a bit:

-->
--- a/qla_os.c
+++ b/qla_os.c
@@ -4858,8 +4858,11 @@ void qla2x00_relogin(struct scsi_qla_host *vha)
      */
         if (atomic_read(&fcport->state) != FCS_ONLINE &&
             fcport->login_retry && !(fcport->flags & FCF_ASYNC_SENT)) {
+            ql_dbg(ql_dbg_disc, vha, 0x2007,"tblume login retry count is
%d\n", fcport->login_retry);
             fcport->login_retry--;
             if (fcport->flags & FCF_FABRIC_DEVICE) {
+                if (fcport->login_retry == 0)
+                    break;
                 ql_dbg(ql_dbg_disc, fcport->vha, 0x2108,
                     "%s %8phC DS %d LS %d\n", __func__,
                     fcport->port_name, fcport->disc_state,
-- 
2.15.0
--<

and found that the login retry count doesn't correctly decrement:

-->
 dmesg | grep -A 1 "Relogin scheduled"
[ 2240.687685] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.687691] qla2xxx [0000:06:02.0]-5046:4: Async-gpdb failed - hdl=51f
portid=7c0800 status=30 mb0=4006 mb1=0 mb2=0 mb6=0 mb7=0.
--
[ 2240.687976] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.687978] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 27
--
[ 2240.688243] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.688252] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 29
--
[ 2240.688475] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.688478] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 27
--
[ 2240.688575] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.688579] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 27
--
[ 2240.688865] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.688869] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 29
--
[ 2240.689008] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.689014] qla2xxx [0000:06:02.0]-5845:4: Async-login complete - hdl=531
portid=770505 mbx1=4.
--
[ 2240.689288] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.689291] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 27
--
[ 2240.689412] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.689416] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 27
--
[ 2240.689569] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.689580] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 29
--
[ 2240.689944] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.689947] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 29
--
[ 2240.690097] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.690100] qla2xxx [0000:06:02.0]-480e:4: Relogin end.
--
[ 2240.690350] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.690355] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 29
--
[ 2240.690481] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.690484] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 29
--
[ 2240.690624] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.690626] qla2xxx [0000:06:02.0]-480e:4: Relogin end.
--
[ 2240.690872] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.690879] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 29
--
[ 2240.691230] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.691237] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 29
--
[ 2240.691651] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.691653] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 29
--
[ 2240.691788] qla2xxx [0000:06:02.0]-480d:4: Relogin scheduled.
[ 2240.691800] qla2xxx [0000:06:02.0]-2807:4: tblume login retry count is 27
--
--<

Investigating why...


You are receiving this mail because: