From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=134.134.136.100; helo=mga07.intel.com; envelope-from=jiaxin.wu@intel.com; receiver=edk2-devel@lists.01.org Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) (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 5F9A8202E60E9 for ; Wed, 18 Oct 2017 00:02:04 -0700 (PDT) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga105.jf.intel.com with ESMTP; 18 Oct 2017 00:05:41 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.43,394,1503385200"; d="scan'208";a="1026348443" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by orsmga003.jf.intel.com with ESMTP; 18 Oct 2017 00:05:40 -0700 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 18 Oct 2017 00:05:40 -0700 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.213]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.152]) with mapi id 14.03.0319.002; Wed, 18 Oct 2017 15:05:38 +0800 From: "Wu, Jiaxin" To: Karunakar P , "edk2-devel@lists.01.org" CC: "Ye, Ting" , "Fu, Siyuan" Thread-Topic: [edk2] [Patch 0/2] Add IPv6 support condition check for HTTP/ISCSI. Thread-Index: AQHTRutxHiY7sCoAOk64R2b+EzYtmKLnST/QgAADsoCAAeJJEA== Date: Wed, 18 Oct 2017 07:05:38 +0000 Message-ID: <895558F6EA4E3B41AC93A00D163B72741633ECFC@SHSMSX103.ccr.corp.intel.com> References: <1508205501-13832-1-git-send-email-jiaxin.wu@intel.com> <895558F6EA4E3B41AC93A00D163B72741633E5F1@SHSMSX103.ccr.corp.intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZTI2Y2ZiMjktNjBmNS00MTc5LWEyMWYtZDI4Yzc5YTJjN2JhIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE2LjUuOS4zIiwiVHJ1c3RlZExhYmVsSGFzaCI6InNaRm9EYWxUdkJ1eWl3YTA3ZzR3NEpxNmhLOHNNWnFsYzZpczA3aktpNm89In0= x-ctpclassification: CTP_IC dlp-product: dlpe-windows dlp-version: 11.0.0.116 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [Patch 0/2] Add IPv6 support condition check for HTTP/ISCSI. X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Oct 2017 07:02:04 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Karunakar, Thanks your verification. Base on your comments, I refined the series patch= es as below to fix the issues: [Patch v3 0/3] NetworkPkg/IScsiDxe: Display InitiatorInfo correctly. NetworkPkg/IScsiDxe: Fix the incorrect/needless DHCP process. NetworkPkg/IScsiDxe: Clean the previous ConfigData when switchi= ng the IP mode. /// This one is to fix the issue A. NetworkPkg/IScsiDxe: Display InitiatorInfo in attempt page even= DHCP enabled.=20 [Patch v2 0/2] Add IPv6 support condition check. NetworkPkg/HttpBootDxe: Add IPv6 support condition check. /// = B && C have been fixed in version 2. NetworkPkg/IScsiDxe: Add IPv6 support condition check.=20 Please help to verify them. Best Regards, Jiaxin > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Karunakar P > Sent: Tuesday, October 17, 2017 6:13 PM > To: Wu, Jiaxin ; edk2-devel@lists.01.org > Cc: Ye, Ting ; Fu, Siyuan > Subject: Re: [edk2] [Patch 0/2] Add IPv6 support condition check for > HTTP/ISCSI. >=20 > Hi Jiaxin, >=20 > I Reviewed the changes for 3 features/Bugs and verified the same, Please > find my below comments and issues faced >=20 > A. Display InitiatorInfo in attempt page even DHCP enabled > -------------------------------------------------------------------------= --------------------- > -------------------------------------------- > 1. I applied IScsiConfigVfr.vfr changes and as well IScsiMisc.c changes > 2. It displays initiator info properly when it's Enabled for DHCP > 3. But, I found some different behavior in below case > a. Add an Attempt (Attempt1 -> Initiator Info Enabled for DHCP) > b. On reboot iSCSI attempt was success and Initiator Details shown > properly =3D=3D> This is as expected > c. Edit the same Attempt1 details to IP6 and save changes and reset > d. Now Iscsi connection with IP6 =3D=3D> This is as Expected > e. Now if we again Change the Attempt1 to IP4, It is Displaying Subne= t > Mask =3D=3D> I guess we are not clearing It >=20 > I guess we need to do ZeroMem for initiator details before. >=20 >=20 > B. [Patch 2/2] NetworkPkg/IScsiDxe: Add IPv6 support condition check. > -------------------------------------------------------------------------= --------------------- > ------------------------------------------- > -> This changes looks similar whatever I attached in Bugzilla, and verifi= ed the > same with off board card witch doesn't support IP6 > -> It works fine, I didn't find any issues on it. >=20 >=20 > C. [Patch 1/2] NetworkPkg/HttpBootDxe: Add IPv6 support condition check. > -------------------------------------------------------------------------= --------------------- > ------------------------------------------------------------------------ > I found some issues in this changes, please find my below comments > 1. HttpBootCheckIpv6Support() function definition and function call > parameter differs , To correct this I've done 1 insertion(+), 1 deletion(= -) like > below > ... > +HttpBootCheckIpv6Support ( > + IN EFI_HANDLE ControllerHandle, > + IN HTTP_BOOT_PRIVATE_DATA *Private, > + OUT BOOLEAN *Ipv6Support > + ) > ... > + // Set IPv6 available flag. > + // > + Status =3D HttpBootCheckIpv6Support (ControllerHandle, > -This->DriverBindingHandle, &Ipv6Available); > +Private, &Ipv6Available); > ... >=20 > 2. With the above changes I've verified with Off board card which doesn't > support IP6, But I'm facing below ASSERT > (324): CR has Bad Signature >=20 > EFI_STATUS > EFIAPI > HttpBootIp4DxeDriverBindingStart ( > IN EFI_DRIVER_BINDING_PROTOCOL *This, > IN EFI_HANDLE ControllerHandle, > IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL > ) > { > ... > if (!EFI_ERROR (Status)) { > Private =3D HTTP_BOOT_PRIVATE_DATA_FROM_ID(Id); // ASSE= RTs > here > } else { > ..... >=20 > 3. I would like add some points and info about the this ASSERT, which I'v= e > found > The ASSERT is happening because of FreePool (Private), mentioned exact > line no below >=20 > EFI_STATUS > EFIAPI > HttpBootIp6DxeDriverBindingStart ( > IN EFI_DRIVER_BINDING_PROTOCOL *This, > IN EFI_HANDLE ControllerHandle, > IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL > ) > { > ... > Status =3D gBS->InstallProtocolInterface ( > &ControllerHandle, > &gEfiCallerIdGuid, > EFI_NATIVE_INTERFACE, > &Private->Id > ); > if (EFI_ERROR (Status)) { > goto ON_ERROR; > } >=20 > } > + > + // > + // Set IPv6 available flag. > + // > + Status =3D HttpBootCheckIpv6Support (ControllerHandle, > -This->DriverBindingHandle, &Ipv6Available); > +Private, &Ipv6Available); > + if (EFI_ERROR (Status)) { > + // > + // Fail to get the data whether UNDI supports IPv6. > + // Set default value to TRUE. > + // > + Ipv6Available =3D TRUE; > + } > + > + if (!Ipv6Available) { > + return EFI_UNSUPPORTED; > + } >=20 > if (Private->Ip6Nic !=3D NULL) { > // > ... >=20 > ON_ERROR: >=20 > HttpBootDestroyIp6Children(This, Private); > HttpBootConfigFormUnload (Private); > FreePool (Private); = // If I comment this > line ASSERT is not happening >=20 > return Status; > } >=20 > 4. At your end could you please verify this IP6 Condition check for HTTP >=20 > Please correct if anything is wrong, Thanks for your support >=20 >=20 > Thank You, > Karunakar >=20 > -----Original Message----- > From: Wu, Jiaxin [mailto:jiaxin.wu@intel.com] > Sent: Tuesday, October 17, 2017 7:32 AM > To: Wu, Jiaxin; edk2-devel@lists.01.org > Cc: Karunakar P; Ye, Ting; Fu, Siyuan > Subject: RE: [edk2] [Patch 0/2] Add IPv6 support condition check for > HTTP/ISCSI. >=20 > Hello Karunakar, >=20 > Base on your original changes attached in Bugzilla 701 > (https://bugzilla.tianocore.org/show_bug.cgi?id=3D710), I created the for= mal > series patches to support the IPv6 condition check for HTTP/ISCSI. >=20 > Please help to review/verify it. >=20 > BTW, To review the ISCSI part, please apply the "[Patch v2 0/2] > NetworkPkg/IScsiDxe: Display InitiatorInfo correctly" first to avoid any = patch > conflict. >=20 > Thanks, > Jiaxin >=20 >=20 >=20 > > -----Original Message----- > > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > > Jiaxin Wu > > Sent: Tuesday, October 17, 2017 9:58 AM > > To: edk2-devel@lists.01.org > > Cc: Karunakar P ; Ye, Ting > > ; Fu, Siyuan ; Wu, Jiaxin > > > > Subject: [edk2] [Patch 0/2] Add IPv6 support condition check for > HTTP/ISCSI. > > > > Base on the request of > > https://bugzilla.tianocore.org/show_bug.cgi?id=3D710, > > we provide this patch to IPv6 condition check by leveraging AIP Protoco= l. > > > > Cc: Karunakar P > > Cc: Ye Ting > > Cc: Fu Siyuan > > Contributed-under: TianoCore Contribution Agreement 1.0 > > Signed-off-by: Karunakar P > > Signed-off-by: Wu Jiaxin > > > > Jiaxin Wu (2): > > NetworkPkg/HttpBootDxe: Add IPv6 support condition check. > > NetworkPkg/IScsiDxe: Add IPv6 support condition check. > > > > NetworkPkg/HttpBootDxe/HttpBootDxe.c | 115 > > +++++++++++++++++++++++++++- > > NetworkPkg/HttpBootDxe/HttpBootDxe.h | 2 + > > NetworkPkg/HttpBootDxe/HttpBootDxe.inf | 4 +- > > NetworkPkg/IScsiDxe/IScsiConfig.c | 18 +++++ > > NetworkPkg/IScsiDxe/IScsiDriver.c | 2 +- > > NetworkPkg/IScsiDxe/IScsiDriver.h | 1 + > > NetworkPkg/IScsiDxe/IScsiDxe.inf | 2 + > > NetworkPkg/IScsiDxe/IScsiImpl.h | 1 + > > NetworkPkg/IScsiDxe/IScsiMisc.c | 135 > > ++++++++++++++++++++++++++++++++- > > NetworkPkg/IScsiDxe/IScsiMisc.h | 4 +- > > 10 files changed, 278 insertions(+), 6 deletions(-) > > > > -- > > 1.9.5.msysgit.1 > > > > _______________________________________________ > > 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