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: https://bugzilla.tianocore.org/show_bug.cgi?id=571 Thanks, Jiaxin > -----Original Message----- > From: Karunakar P [mailto:karunak...@amiindia.co.in] > Sent: Thursday, May 25, 2017 7:34 PM > To: Wu, Jiaxin <jiaxin...@intel.com>; af...@apple.com; edk2- > de...@lists.01.org > Cc: Ye, Ting <ting...@intel.com>; Fu, Siyuan <siyuan...@intel.com> > Subject: RE: [edk2] Pressing ESC from "PXE windows Boot manager" causes > ASSERT > > Hi Jiaxin, > > Please find below details regards Server Configuration > > I have configured DHCP and WDS server on same machine (Windows Server > 2012 R2) > Server IP: 192.168.0.1 > > 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 > > 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 > > > I also tried with PXE server configured in Windows Server 2008 R2. ASSERT > happens at the same place > > 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 your > choice, then press ENTER.) > WinServer2008_boot.wim > To specify an advanced option for this choice, press F8. > ENTER=Choose ESC=Exit > 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 > > Yeah you are correct with above debug messages, It seems that issue is > happening inside bootmgfw > > Thanks, > karunakar > > -----Original Message----- > From: Wu, Jiaxin [mailto:jiaxin...@intel.com] > Sent: Thursday, May 25, 2017 4:07 PM > To: Karunakar P; af...@apple.com; edk2-devel@lists.01.org > Cc: Ye, Ting; Fu, Siyuan > Subject: RE: [edk2] Pressing ESC from "PXE windows Boot manager" causes > ASSERT > > Karunakar, > > 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. > > From your below debug messages, the issue seems to be triggered by > bootmgfw.Entry. > > Thanks, > Jiaxin > > > -----Original Message----- > > From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of > > Karunakar P > > Sent: Thursday, May 25, 2017 2:38 PM > > To: af...@apple.com; edk2-devel@lists.01.org > > Cc: Ye, Ting <ting...@intel.com> > > 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=Exit -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: af...@apple.com [mailto:af...@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 > > > <karunak...@amiindia.co.in> > > 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 != NULL); > > > // > > > // Get the head & tail of the pool entry // > > > Head = CR (Buffer, POOL_HEAD, Data, POOL_HEAD_SIGNATURE); // > > ASSERT happens here > > > ASSERT(Head != 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=571 > > > > > > Thanks, > > > Karunakar > > > > > > > > > -----Original Message----- > > > From: Ye, Ting [mailto:ting...@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-boun...@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 service" > > > 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 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel