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 1CA4D21A16EC1 for ; Fri, 26 May 2017 22:23:40 -0700 (PDT) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga104.jf.intel.com with ESMTP; 26 May 2017 22:24:35 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.38,400,1491289200"; d="scan'208";a="973646575" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by orsmga003.jf.intel.com with ESMTP; 26 May 2017 22:24:35 -0700 Received: from fmsmsx111.amr.corp.intel.com (10.18.116.5) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.319.2; Fri, 26 May 2017 22:24:35 -0700 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by fmsmsx111.amr.corp.intel.com (10.18.116.5) with Microsoft SMTP Server (TLS) id 14.3.319.2; Fri, 26 May 2017 22:24:34 -0700 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.116]) by SHSMSX104.ccr.corp.intel.com ([10.239.4.70]) with mapi id 14.03.0319.002; Sat, 27 May 2017 13:24:32 +0800 From: "Wu, Jiaxin" To: Karunakar P , "afish@apple.com" , "edk2-devel@lists.01.org" CC: "Ye, Ting" , "Fu, Siyuan" Thread-Topic: [edk2] Pressing ESC from "PXE windows Boot manager" causes ASSERT Thread-Index: AdLURLC6iiwpAC5dQK2zZjiTmgfeiQABWJwwAABfyyAABD8KAAAgd2yAABjakKD//4vygP/8vStA Date: Sat, 27 May 2017 05:24:31 +0000 Message-ID: <895558F6EA4E3B41AC93A00D163B7274162D5FB6@SHSMSX103.ccr.corp.intel.com> References: <895558F6EA4E3B41AC93A00D163B7274162CD734@SHSMSX103.ccr.corp.intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMzk3MjlhMWMtMjY4Mi00NjdkLWFkNWYtNThiOTlkZmE3NjdkIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6IjVZQ0dHRmE5cG5hYzA0V3FIY0c3VVdGZHZ2TThMNW96NHNJUHRuR0VNV0U9In0= x-ctpclassification: CTP_IC dlp-product: dlpe-windows dlp-version: 10.0.102.7 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: Pressing ESC from "PXE windows Boot manager" causes ASSERT 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: Sat, 27 May 2017 05:23:40 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Karunakar, We have identified it's the 3rd part NBP file (wdsmgfw.efi) bug. I've updated my detailed analysis in the corresponding Bugzilla:=20 https://bugzilla.tianocore.org/show_bug.cgi?id=3D571 Thanks, Jiaxin > -----Original Message----- > From: Karunakar P [mailto:karunakarp@amiindia.co.in] > Sent: Thursday, May 25, 2017 7:34 PM > To: Wu, Jiaxin ; afish@apple.com; edk2- > devel@lists.01.org > Cc: Ye, Ting ; Fu, Siyuan > Subject: RE: [edk2] Pressing ESC from "PXE windows Boot manager" causes > ASSERT >=20 > Hi Jiaxin, >=20 > Please find below details regards Server Configuration >=20 > I have configured DHCP and WDS server on same machine (Windows Server > 2012 R2) > Server IP: 192.168.0.1 >=20 > 1. Configured Active Directory Domain Services, DHCP , WDS services > 2. DHCPv4 Configuration > Address Pool :- 192.168.0.2 - 192.168.0.50 > Scope Options:- > Option Name Value > ----------------- -------- > 006 DNS server 192.168.0.1 > 060 PXE Client PXEClient >=20 > 3. WDS Configuration DHCP Properties > Check both of the following check boxes > 1. Do not listen on DHCP ports > 2. Configure DHCP options to indicate that this is also a PXE Server > In WDS Server, added boot.wim and install.wim images of same server. > As you know, Once we configure WDS and added boot.wim and install.wim > images to WDS server, bootmgfw.efi and wdsmgfw.efi files will be added to > C:\RemoteInstall\Boot\x64 >=20 >=20 > I also tried with PXE server configured in Windows Server 2008 R2. ASSERT > happens at the same place >=20 > Following are the debug messages > // DEBUG message printed before StartImage() > // StartImage() called > wdsmgfw.Entry(10001000) > Press ENTER for network boot service. ConvertPages: Incompatible memory > types > bootmgfw.Entry(8510C000) > Windows Boot Manager (Server IP: 192.168.000.001) > Choose an operating system to start: (Use the arrow keys to highlight you= r > choice, then press ENTER.) > WinServer2008_boot.wim > To specify an advanced option for this choice, press F8. > ENTER=3DChoose ESC=3DExit > WinServer2008_boot.wim> > To specify an advanced option for this choice, press F8. > ASSERT d:\ProjectPath\MdeModulePkg\Core\Dxe\Mem\Pool.c(561): CR has > Bad Signature >=20 > Yeah you are correct with above debug messages, It seems that issue is > happening inside bootmgfw >=20 > Thanks, > karunakar >=20 > -----Original Message----- > From: Wu, Jiaxin [mailto:jiaxin.wu@intel.com] > Sent: Thursday, May 25, 2017 4:07 PM > To: Karunakar P; afish@apple.com; edk2-devel@lists.01.org > Cc: Ye, Ting; Fu, Siyuan > Subject: RE: [edk2] Pressing ESC from "PXE windows Boot manager" causes > ASSERT >=20 > Karunakar, >=20 > Can you share us the detailed DHCP and WDS configuration? E.g. DHCP > options / WDS Properties (DHCP). As you know, the different DHCP/WDS > configuration may lead to the different PXE download process/behavior. We > would like to reproduce the issue first. >=20 > From your below debug messages, the issue seems to be triggered by > bootmgfw.Entry. >=20 > Thanks, > Jiaxin >=20 > > -----Original Message----- > > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > > Karunakar P > > Sent: Thursday, May 25, 2017 2:38 PM > > To: afish@apple.com; edk2-devel@lists.01.org > > Cc: Ye, Ting > > Subject: Re: [edk2] Pressing ESC from "PXE windows Boot manager" > > causes ASSERT > > > > Hello All, > > > > I've added some traces to narrow down the issue. > > > > Once the NBP file downloaded, control will be given to it. > > I've added some traces before StartImage() and after StartImage() call. > > > > Following are the debug messages > > > > // DEBUG message printed before StartImage() // StartImage() called > > wdsmgfw.Entry(100061C0) > > WDS Boot Manager version 0800 > > Client IP: 192.168.0.6 > > Server IP: 192.168.0.1 > > Server Name: WIN-8PL637590SS > > Press ENTER for network boot service. > > Windows Deployment Services (Server IP: 192.168.0.1) Contacting Server > > (192.168.0.1): > > ESC=3DExit -ConvertPages: Incompatible memory types > > bootmgfw.Entry(849FE1C0) > > ASSERT d:\PathtoProject\MdeModulePkg\Core\Dxe\Mem\Pool.c(561): CR > has > > Bad Signature > > > > It might be Boot Loader Issue, As control is NOT coming back. > > > > Could you please help on this. > > > > Thanks, > > karunakar > > > > -----Original Message----- > > From: afish@apple.com [mailto:afish@apple.com] > > Sent: Wednesday, May 24, 2017 8:39 PM > > To: Karunakar P > > Cc: Ye, Ting; edk2-devel@lists.01.org > > Subject: Re: [edk2] Pressing ESC from "PXE windows Boot manager" > > causes ASSERT > > > > Karunakar, > > > > Every Pool allocation has a header and a tail data structure that is > > outside of the user visible data. Both these structures have > > signatures. The ASSERT you are seeing is a bad signature in the header = so > that looks like a buffer underflow. > > It could also be a use after free bug. > > > > Head: > > POOL_HEAD > > Buffer: > > User Data > > Tail: > > POOL_TAIL > > > > Given the checks only happen on Free it is possible it could be a > > buffer overflow on a buffer that has not yet been freed that runs into = this > buffer. > > > > If you have a debugger dumping the memory before and after the buffer > > can some times be useful. The pattern might give you some clues. > > > > Thanks, > > > > Andrew Fish > > > > > On May 23, 2017, at 10:16 PM, Karunakar P > > > > > wrote: > > > > > > Hello All, > > > > > > The ASSERT happens in the following function > > > > > > /** > > > Internal function to free a pool entry. > > > Caller must have the memory lock held > > > > > > @param Buffer The allocated pool entry to free > > > @param PoolType Pointer to pool type > > > > > > @retval EFI_INVALID_PARAMETER Buffer not valid > > > @retval EFI_SUCCESS Buffer successfully freed. > > > > > > **/ > > > EFI_STATUS > > > CoreFreePoolI ( > > > IN VOID *Buffer, > > > OUT EFI_MEMORY_TYPE *PoolType OPTIONAL > > > ) > > > { > > > . > > > . > > > ASSERT(Buffer !=3D NULL); > > > // > > > // Get the head & tail of the pool entry // > > > Head =3D CR (Buffer, POOL_HEAD, Data, POOL_HEAD_SIGNATURE); // > > ASSERT happens here > > > ASSERT(Head !=3D NULL); > > > . > > > . > > > } > > > > > > We are using NetworkPkg: SHA- > > ef810bc807188224a752ffbcf5e7f4b651291cee > > > > > > I think here I'm unable attach the files. > > > You can find the attached screenshots in the following Bug571 > > > https://bugzilla.tianocore.org/show_bug.cgi?id=3D571 > > > > > > Thanks, > > > Karunakar > > > > > > > > > -----Original Message----- > > > From: Ye, Ting [mailto:ting.ye@intel.com] > > > Sent: Wednesday, May 24, 2017 10:29 AM > > > To: Karunakar P; edk2-devel@lists.01.org > > > Subject: RE: Pressing ESC from "PXE windows Boot manager" causes > > > ASSERT > > > > > > Hi Karunakar, > > > > > > Sorry I did not find your attached files. Would you please send them = again? > > Besides that, do you mind telling us which code base are you using for = PXE > boot? > > Are you using some revision of EDKII main trunk or UDK release? > > > > > > Thanks, > > > Ting > > > > > > -----Original Message----- > > > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf > > > Of Karunakar P > > > Sent: Wednesday, May 24, 2017 12:20 PM > > > To: edk2-devel@lists.01.org > > > Subject: [edk2] Pressing ESC from "PXE windows Boot manager" causes > > > ASSERT > > > > > > Hi All, > > > > > > We have facing an issue with PXE boot. > > > [Issue] > > > When ESC is pressed from Windows Boot manager during PXE boot (IPv4 > > > or > > > IPv6) system Hangs with following ASSERT > > > > > > ASSERT [DxeCore] \MdeModulePkg\Core\Dxe\Mem\Pool.c : CR has Bad > > > Signature > > > > > > [Reproduction Steps] > > > 1. Perform UEFI PXEv4 or UEFI PXEv6 boot 2. It will start PXE boot > > > over IPv4/6 > > and Downloads NBP file successfully. > > > Attached the Screenshot for the same(ScreenShot1.jpg) > > > > > > It will Displays the info like "Press ENTER for network boot servic= e" > > > Attached Screensho(ScreenShot2.jpg) > > > > > > 3. Press ENTER and then press ESC immediately to see the Windows > > > Boot > > Manager Menu > > > It will list the available Operating Systems > > > Attached the screenshot(ScreenShot3.png) > > > > > > 4. Press ESC to come back to Setup or next Boot option > > > > > > [Result] > > > System hangs with ASSERT > > > > > > [Expected Result] > > > On pressing ESC from Windows Boot Manager, it should come back to > > > setup/Next boot option in boot order > > > > > > Note: > > > We have PXE server configured in Windows Server 2012 R2. > > > > > > Please look into it. > > > > > > > > > Thanks, > > > karunakar > > > _______________________________________________ > > > 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