> You're probably right. I'm very used to catching problems with PEI at > that ASSERT() so I hate to see it go. But it could move to some well- > defined place in DxeIpl.
I agree - I have hit that friendly ASSERT many times over the years as well. This addition in my patchset in DxeIpl on the normal boot path should act as a replacement: + // DXE core load requires permanent memory + Status = PeiServicesLocatePpi ( + &gEfiPeiMemoryDiscoveredPpiGuid, + 0, + NULL, + (VOID **)&Dummy + ); + ASSERT_EFI_ERROR (Status); + if( EFI_ERROR(Status)) return Status; + > I think that the language of the PEI spec needs some clean up in this > regard. The PEI Core/PEI Foundation/PEI Dispatcher/PEI Phase > terminology muddle makes it hard to be precise about this kind of > thing. Agreed. It's kind of muddled right now. Clarifying what is meant by permanent memory from a purely PEI perspective (InstallPeiMemory, to start the RAM shadowing process) versus from a HOB perspective would be helpful. Thanks, Eugene > -----Original Message----- > From: edk2-devel [mailto:[email protected]] On Behalf > Of Tim Lewis > Sent: Thursday, December 03, 2015 4:22 PM > To: Cohen, Eugene <[email protected]>; Laszlo Ersek > <[email protected]>; Zeng, Star <[email protected]>; edk2- > [email protected] <[email protected]>; Liming Gao > <[email protected]> > Subject: Re: [edk2] [PATCH] MdeModulePkg: allow DxeIpl to load > without permanent memory to enable S3 resume from temporary > memory > > You're probably right. I'm very used to catching problems with PEI at > that ASSERT() so I hate to see it go. But it could move to some well- > defined place in DxeIpl. > > I think that the language of the PEI spec needs some clean up in this > regard. The PEI Core/PEI Foundation/PEI Dispatcher/PEI Phase > terminology muddle makes it hard to be precise about this kind of > thing. > > Tim > > -----Original Message----- > From: edk2-devel [mailto:[email protected]] On Behalf > Of Cohen, Eugene > Sent: Thursday, December 03, 2015 11:16 AM > To: Tim Lewis <[email protected]>; Laszlo Ersek > <[email protected]>; Zeng, Star <[email protected]>; edk2- > [email protected] <[email protected]>; Liming Gao > <[email protected]> > Subject: Re: [edk2] [PATCH] MdeModulePkg: allow DxeIpl to load > without permanent memory to enable S3 resume from temporary > memory > > Tim, > > > Personally, I don't see this as a positive change. The PEI flow from > > the earliest days has said: at the end of PEI there is memory and > > there is a boot mode (see 11.2.1). You can see this assumption in 2.5 > > and 9.1 of the PI specification, where the result of the PEI > > Foundation (not the PEI phase) is "initialized permanent memory". > > I think this reflects the history of PEI - it was developed first to > initialize > memory and then, "oh yeah, we need to find a place to do S3 > resume". As such 2.5 makes no mention of S3 resume. 9.1 describes > the handoff to the DXE Foundation and no one is arguing that you > don't need permanent memory for that. > > > Making this change would change the contract between the PEI > > Foundation and the DXE IPL. As such, it would break existing > > implementations. > > This is relaxing the contract so a DXE IPL with the requirement of > permanent memory (depex) would continue to work on both old and > new implementations. From what I can see, the contract here is really > between the Memory Init driver and the updated DXE IPL with the > removal of the permanent memory PPI dependency. This change > should be fully backwards compatible since existing Memory Init > implementations that always publish permanent memory on S3 > resume will continue to work. Can you elaborate on what gets > broken? > > Thanks, > > Eugene > _______________________________________________ > edk2-devel mailing list > [email protected] > https://lists.01.org/mailman/listinfo/edk2-devel > _______________________________________________ > edk2-devel mailing list > [email protected] > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

