Re: QLogic 57840S iSCSI Offload Engine causes unknown OpCode 0x43 error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2017-03-31 at 00:09 -0700, Nicholas A. Bellinger wrote:
> On Thu, 2017-03-30 at 22:35 -0700, Arun Easi wrote:

<SNIP>

> > > 
> > > The result is that since the QLogic MSFT initiator doesn't propose them,
> > > LIO proposes them itself, and then immediately transitions to full
> > > feature phase.  However, the QLogic MSFT side still attempts to respond
> > > to DefaultTime2Retain and DefaultTime2Wait, even though
> > > ISCSI_FLAG_LOGIN_NEXT_STAGE3 and ISCSI_FLAG_LOGIN_TRANSIT have been set
> > > in the last login response by LIO.
> > > 
> > > AFAIK, this is the only initiator I've seen that doesn't propose
> > > DefaultTime2Retain + DefaultTime2Wait, also doesn't honor the target's
> > > request to transition to full feature phase, but then still attempts to
> > > respond to the keys.
> > 
> > Interestingly, I was suggesting the same as a workaround to our Windows 
> > driver team earlier Today.
> > 
> 
> :-)
> 
> > > 
> > > So really this is a grey area.  The original hack to support GlobalSAN
> > > is definitely not RFC, but at the same time Qlogic MSFT should really be
> > > sending DefaultTime2Retain + DefaultTime2Wait, and should be honoring
> > > LIO's ISCSI_FLAG_LOGIN_NEXT_STAGE3 and ISCSI_FLAG_LOGIN_TRANSIT to
> > > transition to full feature phase.
> > 
> > IMHO, not proposing the keys (and taking defaults, instead) is better, and 
> > more RFC compliant, than not waiting for a response to the proposed keys. 
> > This would not be so bad because most initiators proposes main keys in the 
> > initial request itself anyway.
> > 
> > This is what RFC has to say about the response to proposals:
> > 
> >     Responses are REQUIRED in all other cases, and the value chosen and
> >     sent by the acceptor becomes the outcome of the negotiation.
> > 
> > The exception was given only to boolean keys; given that these keys are 
> > not boolean keys, initiators are required by the RFC to respond.
> > 
> > ..and this about using defaults:
> > 
> >     All negotiations are explicit (i.e., the result MUST only be based on
> >     newly exchanged or declared values).  There are no implicit
> >     proposals.  If a proposal is not made, then a reply cannot be
> >     expected.  Conservative design also requires that default values
> >     should not be relied upon when use of some other value has serious
> >     consequences.
> > 
> > Just my 2c.
> > 
> 
> In retrospect, I agree not proposing the keys and using RFC defaults
> instead is a better approach than the original hack.  It would involve a
> larger change to existing code to work though..
> 
> In the case DefaultTime2Retain and DefaultTime2Wait having either sides
> use (potentially) different values is harmless, considering they don't
> have anything to do with I/O.
> 
> However, the original GlobalSAN initiator also didn't propose nor
> respond to FirstBurstLength or MaxBurstLength..
> 
> So taking the approach to just use defaults and don't propose anything
> for the non I/O related keys would be OK, but for the I/O related keys
> that may not be as safe an assumption.
> 
> That said, looking around it appears at least some version of GlobalSAN
> are now proposing the keys the hack in question originally addressed:
> 
> https://forums.freebsd.org/threads/51006/
> 
> Albeit, the log output is from discovery but I think it's a good sign
> the RFC breakage may finally be addressed.
> 
> If that is the case, I'd much proper to drop this old hack all-together.
> 
> So I'll go steal a MacOSX laptop from someone tomorrow and give it a
> shot with a modern GlobalSAN version.
> 

Ok, I've been able to confirm with GlobalSAN iSCSI v5.3.0.541 that it
does correctly propose the four keys in question, and makes the original
hack in iscsi_check_proposer_for_optional_reply() that is causing
problems here, now unnecessary.

Sending out a patch for this shortly.

Martin + Arun + QLogic folks, please verify on your end.

--
To unsubscribe from this list: send the line "unsubscribe target-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux SCSI]     [Kernel Newbies]     [Linux SCSI Target Infrastructure]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Device Mapper]

  Powered by Linux