Hi Ard, The UEFI Specification Section 23.3 says:
"The ESRT shall be stored in memory of type EfiBootServicesData." If an RT driver needs ESRT info after ExitBootServices(), then the RT driver should collect that information before ExitBootServices(). Best regards, Mike > -----Original Message----- > From: devel@edk2.groups.io > [mailto:devel@edk2.groups.io] On Behalf Of Ard > Biesheuvel > Sent: Friday, April 19, 2019 7:13 AM > To: devel@edk2.groups.io > Cc: ming.hu...@linaro.org; Wu, Hao A > <hao.a...@intel.com>; Wang, Jian J > <jian.j.w...@intel.com>; Ard Biesheuvel > <ard.biesheu...@linaro.org> > Subject: [edk2-devel] [PATCH resend] > MdeModulePkg/EsrtDxe: allocate ESRT table from > RtServicesData memory > > Given that the firmware itself may access the ESRT > table when the OS > invokes the UpdateCapsule () boot service, it requires > a virtual mapping > and so it needs to be allocated from RtServicesData > memory. > > Signed-off-by: Ard Biesheuvel > <ard.biesheu...@linaro.org> > --- > MdeModulePkg/Universal/EsrtDxe/EsrtDxe.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/MdeModulePkg/Universal/EsrtDxe/EsrtDxe.c > b/MdeModulePkg/Universal/EsrtDxe/EsrtDxe.c > index a386a9770583..1741cbe8f2b5 100644 > --- a/MdeModulePkg/Universal/EsrtDxe/EsrtDxe.c > +++ b/MdeModulePkg/Universal/EsrtDxe/EsrtDxe.c > @@ -571,7 +571,8 @@ EsrtReadyToBootEventNotify ( > goto EXIT; > } > > - EsrtTable = > AllocatePool(sizeof(EFI_SYSTEM_RESOURCE_TABLE) + > NonFmpRepositorySize + FmpRepositorySize); > + EsrtTable = AllocateRuntimePool > (sizeof(EFI_SYSTEM_RESOURCE_TABLE) + > + > NonFmpRepositorySize + FmpRepositorySize); > if (EsrtTable == NULL) { > DEBUG ((EFI_D_ERROR, "Esrt table memory allocation > failure\n")); > goto EXIT; > -- > 2.20.1 > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#39327): https://edk2.groups.io/g/devel/message/39327 Mute This Topic: https://groups.io/mt/31245843/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-