From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 36A5E8037D for ; Mon, 13 Mar 2017 22:06:47 -0700 (PDT) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga104.jf.intel.com with ESMTP; 13 Mar 2017 22:06:46 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,162,1486454400"; d="scan'208";a="1122201124" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by fmsmga001.fm.intel.com with ESMTP; 13 Mar 2017 22:06:46 -0700 Received: from fmsmsx118.amr.corp.intel.com (10.18.116.18) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.248.2; Mon, 13 Mar 2017 22:06:46 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by fmsmsx118.amr.corp.intel.com (10.18.116.18) with Microsoft SMTP Server (TLS) id 14.3.248.2; Mon, 13 Mar 2017 22:06:45 -0700 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.88]) by SHSMSX103.ccr.corp.intel.com ([10.239.4.69]) with mapi id 14.03.0248.002; Tue, 14 Mar 2017 13:06:43 +0800 From: "Zhang, Lubo" To: Santhapur Naveen CC: "Ye, Ting" , "edk2-devel@lists.01.org" Thread-Topic: ISCSI says "Session Doesn't Exist" Thread-Index: AdKOo1PNr5oKc1KtQkGfr5/iCtjCdwCKemiwABmDlokAGveAcAKxb8qwAAaWv1EAAEbakA== Date: Tue, 14 Mar 2017 05:06:42 +0000 Message-ID: <7619447B08B8F74DA4FF2A813B79803B39B01F3B@shsmsx102.ccr.corp.intel.com> References: <625A2455CC232F40B0F38F05ACED6D978C4E1F3B@VENUS1.in.megatrends.com>, <625A2455CC232F40B0F38F05ACED6D978C4E2EFB@VENUS1.in.megatrends.com> , <7619447B08B8F74DA4FF2A813B79803B39B01E60@shsmsx102.ccr.corp.intel.com> <625A2455CC232F40B0F38F05ACED6D97B69AE52F@VENUS1.in.megatrends.com> In-Reply-To: <625A2455CC232F40B0F38F05ACED6D97B69AE52F@VENUS1.in.megatrends.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: ISCSI says "Session Doesn't Exist" X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Mar 2017 05:06:47 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Naveen I mean that the patch will fix reconnect -r command but not reset comma= nd for next boot iSCSI connection. Thanks Lubo > -----Original Message----- > From: Santhapur Naveen [mailto:naveens@amiindia.co.in] > Sent: Tuesday, March 14, 2017 1:01 PM > To: Zhang, Lubo > Cc: Ye, Ting ; edk2-devel@lists.01.org > Subject: RE: ISCSI says "Session Doesn't Exist" >=20 > Hi Lubo, >=20 > Many thanks for your update. >=20 > You mean to say that this issue is because of the TCP Service and this ca= n be > fixed with the path you are yet to send. Am I right? >=20 > Warm Regards, > Naveen > ________________________________________ > From: Zhang, Lubo [lubo.zhang@intel.com] > Sent: Tuesday, March 14, 2017 7:24 AM > To: Santhapur Naveen > Cc: Ye, Ting; edk2-devel@lists.01.org > Subject: RE: ISCSI says "Session Doesn't Exist" >=20 > Hi Naveen >=20 > For this issue you mentioned, I have found the root cause. After we > established the iSCSI connection between initiator and target server, if = we use > the following command immediately >=20 > Reset command (system power off, will not perform driver binding stop, fr= om > my debug log) : we can rebuilt the iSCSI connection if the target is depl= oyed on > Debain OS, but failed on windows server, this is the target server behavi= or. Since > we do not send the reset packet on my platform, so the windows target ser= ver > think our session is still exist and reject the new session request. >=20 > Reconnect -r: this command will execute the iSCSI driver binding stop fu= nction > and reset the TCP connection actively. But we cannot capture the reset pa= cket > either. I debugged and find that before we reset the socket in IScsiSess= ionAbort, > the socket configured state has already been set as unconfigured in tcp d= river > binding stop , so we will not invoke the TCP dispatch to abort the connec= tion by > sending a reset packet. >=20 > This is a Tcp service binding destroy child issue, I will send a patch t= o fix. >=20 >=20 > Best regards > Lubo >=20 > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Ye= , > Ting > Sent: Tuesday, February 28, 2017 4:53 PM > To: Santhapur Naveen ; edk2-devel@lists.01.org > Subject: Re: [edk2] ISCSI says "Session Doesn't Exist" >=20 > Hi Naveen, >=20 > Thanks for your info. We are able to reproduce the issue using Windows Se= rver > 2012 now. So far we are still not sure whether it is a particular issue i= n Windows > iSCSI target or UEFI iSCSI initiator. >=20 > Will update to you once we have further information later. >=20 > For your info: A link describes the know issues in Windows Server 2012 iS= CSI > target, https://technet.microsoft.com/en-us/library/jj863561(v=3Dws.11).a= spx. It > has a related issue but not the same one we met now. >=20 > Standard Login Key Negotiation > RFC 3720, section 10.13.3, specifies the following: > For a new session, the target MUST generate a non-zero TSIH and ONLY retu= rn it > in the Login Final-Response. > The behavior exhibited by ISCSI Target Server: > When the iSCSI initiator performed a standard login and negotiated the lo= gin > parameters, the iSCSI Target Server was observed to set the TSIH field in= the first > Login Response PDU. >=20 > Thanks, > Ting >=20 >=20 > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Santhapur Naveen > Sent: Tuesday, February 28, 2017 4:04 AM > To: Ye, Ting ; edk2-devel@lists.01.org > Subject: Re: [edk2] ISCSI says "Session Doesn't Exist" >=20 > Hello Ting, >=20 > I've configured iSCSI target in Windows Server 2012. And the procedure is= similar > as in https://blogs.technet.microsoft.com/filecab/2012/05/21/introduction= -of- > iscsi-target-in-windows-server-2012/ > Please let me know if I had to make any changes to my iSCSI server. >=20 > Thank you, > Naveen > ________________________________________ > From: Ye, Ting [ting.ye@intel.com] > Sent: Monday, February 27, 2017 1:23 PM > To: Santhapur Naveen; edk2-devel@lists.01.org > Subject: RE: ISCSI says "Session Doesn't Exist" >=20 > Hi Naveen, >=20 > According to the table you shared (defined in RFC 3720), it seems when TS= IH is > ZERO, the target should not fail the login with "session does not exist". >=20 > +------------------------------------------------------------------+ > |new | zero | any | instantiate a new session | > +------------------------------------------------------------------+ > |existing | zero | any | do session reinstatement | > | | | | (see section 5.3.5) | > +------------------------------------------------------------------+ >=20 > I checked the latest code in NetworkPkg/IScsiDxe, the Tsih is always set = to ZERO > in IScsiSessionInit. The immediate reset will also trigger driver binding= start so > IScsiSessionInit will be executed. >=20 > It seems to me your iSCSI target does not comply with the rules defined i= n RFC > documentation. If possible, would you please tell us which iSCSI target a= re you > using? >=20 > Thanks, > Ting >=20 > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Santhapur Naveen > Sent: Friday, February 24, 2017 9:59 PM > To: edk2-devel@lists.01.org > Subject: [edk2] ISCSI says "Session Doesn't Exist" >=20 > Hello all, >=20 > I've a question about IScsi and any suggestions would be helpful >=20 > [Issue Summary] > If I add an ISCSI attempt and on the next reboot, a connection will be > established in between the initiator and the target. Till now, it is fine= . Now if I do > an immediate reset with in 20 seconds, on the next boot, the initiator is= trying to > establish a session, but the target rejects saying "Session does not exis= t". If I > reset after 20 seconds or so, the connection would have been established = with > the same login details. >=20 > To dive deeper, I've checked the RFC documentation on this and found the > following information. But when I checked the wireshark capture, I found = my > TSIH is ZERO even for the immediate session. If I want to make my immedia= te > session also into a successful one, what should I be doing? I'm aware tha= t > there's a function available IScsiSessionAbort(). Would it help me or pro= vide your > suggestions to get me going. >=20 >=20 > +------------------------------------------------------------------+ >=20 > |ISID | TSIH | CID | Target action | >=20 > +------------------------------------------------------------------+ >=20 > |new | non-zero | any | fail the login | >=20 > | | | | ("session does not exist") | >=20 > +------------------------------------------------------------------+ >=20 > |new | zero | any | instantiate a new session | >=20 > +------------------------------------------------------------------+ >=20 > |existing | zero | any | do session reinstatement | >=20 > | | | | (see section 5.3.5) | >=20 > +------------------------------------------------------------------+ >=20 > |existing | non-zero | new | add a new connection to | >=20 > | | existing | | the session | >=20 > +------------------------------------------------------------------+ >=20 > |existing | non-zero |existing| do connection reinstatement| >=20 > | | existing | | (see section 5.3.4) | >=20 > +------------------------------------------------------------------+ >=20 > |existing | non-zero | any | fail the login | >=20 > | | new | | ("session does not exist") | >=20 > +------------------------------------------------------------------+ >=20 >=20 > Thanks, > Naveen > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel