Re: 281e36cbaf causes FlexBoot iSCSI errors

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

 



Hi Nic,

On Fri, 7 Jul 2017, 3:31pm, Nicholas A. Bellinger wrote:

> Hey Arun & Robert,
> 
> On Thu, 2017-06-29 at 23:07 -0700, Nicholas A. Bellinger wrote:
> > On Mon, 2017-06-26 at 11:51 -0700, Arun Easi wrote:
> > > On Sun, 25 Jun 2017, 1:15pm, Nicholas A. Bellinger wrote:
> > > 
> > > > Hi Robert,
> > > > 
> > > > Adding Or Gerlitz CC', as he can direct this to the relevant Mellanox
> > > > folks responsible for Flexboot.
> > > > 
> > > > Also adding Arun from Cavium CC', to ensure any additional change don't
> > > > break the QLogic/MSFT iscsi environment we addressed by dropping the
> > > > legacy work-around.
> > > > 
> > > > On Fri, 2017-06-16 at 14:14 -0600, Robert LeBlanc wrote:
> > > > > 281e36cbaf : iscsi-target: Drop work-around for legacy GlobalSAN initiator
> > > > > 
> > > > 
> > > > For reference, here is the email thread:
> > > > 
> > > > http://www.spinics.net/lists/target-devel/msg14938.html
> > > > 
> > > > > Causes "No response for proposed key "FirstBurstLength"." when the
> > > > > target is running 4.9.32. We tested both FlexBoot 3.5.109 and 3.5.110.
> > > > > If we revert 281e36cbaf then FlexBoot 3.5.109 boots fine, but FlexBoot
> > > > > 3.5.110 fails with messages "cmd exceeds last lba 64 (lba 64, sectors
> > > > > 1)".
> > > > > 
> > > > > It seems that FlexBoot has relied upon the workaround that now has been removed.
> > > > > 
> > > > 
> > > > Ok, so it looks like Flexboot is not proposing nor responding to
> > > > FirstBurstLength..
> > > > 
> > > > Robert, please send along a packet capture to verify this is the only
> > > > key not being proposed.
> > > > 
> > > > Mellanox folks, can you confirm Flexboot is not proposing nor responding
> > > > to FirstBurstLength.
> > > > 
> > > > > We have had to revert the patch and downgrade the firmware to get
> > > > > things working again.
> > > > > 
> > > > > # flint -d /dev/mst/mt4115_pciconf0 q
> > > > > Image type:          FS3
> > > > > FW Version:          12.18.1000
> > > > > FW Release Date:     25.1.2017
> > > > > Product Version:     rel-12_18_1000
> > > > > Rom Info:            type=PXE version=3.5.109 devid=4115
> > > > > Description:         UID                GuidsNumber
> > > > > Base GUID:           248a0703001e7cc8        4
> > > > > Base MAC:            0000248a071e7cc8        4
> > > > > Image VSD:
> > > > > Device VSD:
> > > > > PSID:                MT_2150110033
> > > > > 
> > > > 
> > > > So the Qlogic/MSFT environment was not proposing the DefaultTime2Wait +
> > > > DefaultTime2Retain keys, which triggered the original work-around which
> > > > proposed the keys but did not wait for a response before transitioning
> > > > to full feature phase.
> > > > 
> > > > Note the original work-around did this for DefaultTime2Wait,
> > > > DefaultTime2Retain, FirstBurstLength, and MaxBurstLength.
> > > > 
> > > > However, the original work-around to propose the missing keys but not
> > > > wait for the response was in retrospect, not the right approach per
> > > > RFC-3720.
> > > > 
> > > > That said, we've got two options to consider:
> > > > 
> > > > 1) Get the Mellanox/Flexboot folks to fix their ROM to propose, 
> > > >    and/or respond to FirstBurstLength to follow RFC-3720.
> > > > 2) Re-add a similar iscsi-target work-around for FirstBurstLength.
> > > > 
> > > > So #1 should really be fixed, as not proposing nor responding to
> > > > FirstBurstLength seems like a broken initiator to me, and would likely
> > > > run into problems with other targets as well.
> > > > 
> > > > For #2, since the work-around is not RFC I'm reluctant to re-add it.
> > > > However, since Qlogic/MFST was tripping over DefaultTime2Wait +
> > > > DefaultTime2Retain and not FirstBurstLength, in practice a work-around
> > > > for FirstBurstLength only would probably allow FlexBoot to 'just work',
> > > > and not break Qlogic/MFST or any other host environments.
> > > > 
> > > > That said, here's a quick patch to do that.  Robert, please verify on
> > > > your end with Flexboot.
> > > > 
> > > > diff --git a/drivers/target/iscsi/iscsi_target_parameters.c b/drivers/target/iscsi/iscsi_targ
> > > > index fce6276..52b1d44 100644
> > > > --- a/drivers/target/iscsi/iscsi_target_parameters.c
> > > > +++ b/drivers/target/iscsi/iscsi_target_parameters.c
> > > > @@ -786,6 +786,11 @@ static void iscsi_check_proposer_for_optional_reply(struct iscsi_param *
> > > >                  */
> > > >                 if (!strcmp(param->name, MAXCONNECTIONS))
> > > >                         SET_PSTATE_REPLY_OPTIONAL(param);
> > > > +               /*
> > > > +                * Required for Mellanox Flexboot iscsi ROM
> > > > +                */
> > > > +               if (!strcmp(param->name, FIRSTBURSTLENGTH))
> > > > +                       SET_PSTATE_REPLY_OPTIONAL(param);
> > > >         } else if (IS_PHASE_DECLARATIVE(param))
> > > >                 SET_PSTATE_REPLY_OPTIONAL(param);
> > > >  }
> > > > 
> > > > Arun, from looking at the original QLogic/MSFT packet captures
> > > > FirstBurstLength is being proposed, so I don't think re-adding this
> > > > work-around would have any effect on your end.
> > > 
> > > Yes, FirstBurstLength is proposed initially in our case. Agree, it looks 
> > > ok from our side.
> > > 
> > > Just wish these workarounds come with knobs, with a default off setting.
> > 
> > Fair point.  Will think about how that might look..
> > 
> 
> Ok, just postd the following patch to re-add the FirstBurstLength
> work-around for FlexBoot, and make it configurable via a new
> 'login_keys_workaround' TPG attribute:
> 
> iscsi-target: Add login_keys_workaround attribute for non RFC initiators
> https://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending.git/commit/?h=for-next&id=6bdef5928b40d0225b47b055bbe41b3101f0babf
> 
> However, after further consideration I did end up enabling this
> work-around by default, since it doesn't have any effect on QLogic MSFT,
> and so it 'just works' for existing Flexboot users.
> 
> So that said, Arun & Robert, please grab this patch and test it ASAP, so
> it can be pushed in the upcoming v4.13-rc1 PULL request.
> 

I am on vacation now, I will not be able to test the patch. Sorry.

I took a look at the patch though, and it looks ok.

Regards,
-Arun
--
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