Anything else needed to get this merged would as the November stable release is coming up.
Thanks, Jeff > -----Original Message----- > From: gaoliming <gaolim...@byosoft.com.cn> > Sent: Friday, October 6, 2023 11:23 PM > To: Jeff Brasen <jbra...@nvidia.com>; devel@edk2.groups.io > Cc: jian.j.w...@intel.com; dandan...@intel.com; Ashish Singhal > <ashishsin...@nvidia.com>; michael.d.kin...@intel.com > Subject: 回复: [PATCH] MdeModulePkg/DxeCore: Allow relocation of > images with large address > > External email: Use caution opening links or attachments > > > Jeff: > I have no better solution than your proposal for this problem. So, this > patch > is good to me. Reviewed-by: Liming Gao <gaolim...@byosoft.com.cn> > > Thanks > Liming > > -----邮件原件----- > > 发件人: Jeff Brasen <jbra...@nvidia.com> > > 发送时间: 2023年9月12日 4:14 > > 收件人: devel@edk2.groups.io > > 抄送: jian.j.w...@intel.com; gaolim...@byosoft.com.cn; > > dandan...@intel.com; Ashish Singhal <ashishsin...@nvidia.com> > > 主题: RE: [PATCH] MdeModulePkg/DxeCore: Allow relocation of images > with > > large address > > > > Any thoughts/feedback on this patch? > > > > Thanks, > > Jeff > > > > > > > -----Original Message----- > > > From: Jeff Brasen <jbra...@nvidia.com> > > > Sent: Monday, May 15, 2023 5:49 PM > > > To: devel@edk2.groups.io > > > Cc: jian.j.w...@intel.com; gaolim...@byosoft.com.cn; > > dandan...@intel.com; > > > Jeff Brasen <jbra...@nvidia.com>; Ashish Singhal > > > <ashishsin...@nvidia.com> > > > Subject: [PATCH] MdeModulePkg/DxeCore: Allow relocation of images > > > with large address > > > > > > Add PCD to control if modules with start addresses in PE/COFF > > > > 0x100000 attempt to load at specified address. > > > If a module has an address in this range and there is untested > > > memory DxeCore will attempt to promote all memory to tested which > > > bypasses any memory testing that would occur later in boot. > > > > > > There are several existing AARCH64 option roms that have base > > > addresses > > of > > > 0x180000000. > > > > > > Signed-off-by: Jeff Brasen <jbra...@nvidia.com> > > > Reviewed-by: Ashish Singhal <ashishsin...@nvidia.com> > > > --- > > > MdeModulePkg/Core/Dxe/DxeMain.inf | 1 + > > > MdeModulePkg/Core/Dxe/Image/Image.c | 4 +++- > > > MdeModulePkg/MdeModulePkg.dec | 7 +++++++ > > > 3 files changed, 11 insertions(+), 1 deletion(-) > > > > > > diff --git a/MdeModulePkg/Core/Dxe/DxeMain.inf > > > b/MdeModulePkg/Core/Dxe/DxeMain.inf > > > index 35d5bf0dee..16871f2021 100644 > > > --- a/MdeModulePkg/Core/Dxe/DxeMain.inf > > > +++ b/MdeModulePkg/Core/Dxe/DxeMain.inf > > > @@ -187,6 +187,7 @@ > > > gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPropertyMask > > > ## CONSUMES > > > gEfiMdeModulePkgTokenSpaceGuid.PcdCpuStackGuard > > ## > > > CONSUMES > > > > > > gEfiMdeModulePkgTokenSpaceGuid.PcdFwVolDxeMaxEncapsulationDepth > > > ## CONSUMES > > > + gEfiMdeModulePkgTokenSpaceGuid.PcdImageLargeAddressLoad > > > ## CONSUMES > > > > > > # [Hob] > > > # RESOURCE_DESCRIPTOR ## CONSUMES > > > diff --git a/MdeModulePkg/Core/Dxe/Image/Image.c > > > b/MdeModulePkg/Core/Dxe/Image/Image.c > > > index 9dbfb2a1fa..6bc3a549ae 100644 > > > --- a/MdeModulePkg/Core/Dxe/Image/Image.c > > > +++ b/MdeModulePkg/Core/Dxe/Image/Image.c > > > @@ -680,7 +680,9 @@ CoreLoadPeImage ( > > > ); > > > } > > > } else { > > > - if ((Image->ImageContext.ImageAddress >= 0x100000) || Image- > > > >ImageContext.RelocationsStripped) { > > > + if ((PcdGetBool (PcdImageLargeAddressLoad) && ((Image- > > > >ImageContext.ImageAddress) >= 0x100000)) || > > > + Image->ImageContext.RelocationsStripped) > > > + { > > > Status = CoreAllocatePages ( > > > AllocateAddress, > > > (EFI_MEMORY_TYPE)(Image- > > > >ImageContext.ImageCodeMemoryType), > > > diff --git a/MdeModulePkg/MdeModulePkg.dec > > > b/MdeModulePkg/MdeModulePkg.dec index 95dd077e19..6fd1bd7b8f > > > 100644 > > > --- a/MdeModulePkg/MdeModulePkg.dec > > > +++ b/MdeModulePkg/MdeModulePkg.dec > > > @@ -1116,6 +1116,13 @@ > > > # @Prompt Output MMIO address of Trace Hub message. > > > > > > > > > gEfiMdeModulePkgTokenSpaceGuid.PcdTraceHubDebugMmioAddress|0|UI > N > > > T64|0x30001058 > > > > > > + ## Indicates if images with large load address (>0x100000) should > > > attempted to load at specified location. > > > + # If enabled, attempt to allocate at specfied location will be > attempted > > with > > > a fall back to any address. > > > + # TRUE - UEFI will attempt to load at specified location.<BR> > > > + # FALSE - UEFI will load at any address<BR> > > > + # @Prompt Enable large address image loading. > > > + > > > + > > > > > > gEfiMdeModulePkgTokenSpaceGuid.PcdImageLargeAddressLoad|TRUE|BO > O > > L > > > EAN|0 > > > + x30001059 > > > + > > > [PcdsFixedAtBuild, PcdsPatchableInModule] > > > ## Dynamic type PCD can be registered callback function for Pcd > setting > > > action. > > > # PcdMaxPeiPcdCallBackNumberPerPcdEntry indicates the maximum > > > number of callback function > > > -- > > > 2.25.1 > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#110333): https://edk2.groups.io/g/devel/message/110333 Mute This Topic: https://groups.io/mt/102280269/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-