OK. Let me merge this patch firstly. /Guo

 

From: Marcello Sylvester Bauer <marcello.bauer@9elements.com>
Sent: Monday, September 14, 2020 2:00 AM
To: Dong, Guo <guo.dong@intel.com>
Cc: devel@edk2.groups.io; Ma, Maurice <maurice.ma@intel.com>; Desimone, Nathaniel L <nathaniel.l.desimone@intel.com>; Zeng, Star <star.zeng@intel.com>
Subject: Re: [edk2-devel] [PATCH v1 1/1] UefipayloadPkg: Protect coreboot tables

 

Hi Guo,

Sounds like a good proposal, but it would be great to merge this change temporarily.

In some cases of the current implementation edk2 does override the memory area, where the coreboot table pointer is located.
Therefore the kernel and cbmem tool is not able to locate the tables anymore.

Thanks,
Marcello

 

On Tue, Sep 8, 2020 at 11:40 PM Dong, Guo <guo.dong@intel.com> wrote:


Hi Marcello,

In the UEFI payload, we should not hardcoded any memory usage. It means UEFI payload should use the memory map whatever reported from the bootloader. I plan to remove this hardcoded memory usage soon.
Before that, it is OK for me to merge this change if you want.
BTW, did you see any issue with current implement?

Thanks,
Guo

> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Marcello
> Sylvester Bauer
> Sent: Wednesday, July 8, 2020 5:01 AM
> To: devel@edk2.groups.io
> Cc: Ma, Maurice <maurice.ma@intel.com>; Desimone, Nathaniel L
> <nathaniel.l.desimone@intel.com>; Zeng, Star <star.zeng@intel.com>
> Subject: [edk2-devel] [PATCH v1 1/1] UefipayloadPkg: Protect coreboot tables
>
> From: Patrick Rudolph <patrick.rudolph@9elements.com>
>
> Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
> Signed-off-by: Marcello Sylvester Bauer <marcello.bauer@9elements.com>
> Cc: Maurice Ma <maurice.ma@intel.com>
> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
> Cc: Star Zeng <star.zeng@intel.com>
> ---
>  UefiPayloadPkg/BlSupportPei/BlSupportPei.c | 26 ++++++++++++++------
>  1 file changed, 19 insertions(+), 7 deletions(-)
>
> diff --git a/UefiPayloadPkg/BlSupportPei/BlSupportPei.c
> b/UefiPayloadPkg/BlSupportPei/BlSupportPei.c
> index 22972453117a..b3ff065a537e 100644
> --- a/UefiPayloadPkg/BlSupportPei/BlSupportPei.c
> +++ b/UefiPayloadPkg/BlSupportPei/BlSupportPei.c
> @@ -390,24 +390,36 @@ BlPeiEntryPoint (
>    EFI_PEI_GRAPHICS_DEVICE_INFO_HOB GfxDeviceInfo;
>
>    EFI_PEI_GRAPHICS_DEVICE_INFO_HOB *NewGfxDeviceInfo;
>
>
>
> -
>
> -  //
>
> -  // Report lower 640KB of RAM. Attribute EFI_RESOURCE_ATTRIBUTE_TESTED
>
> -  // is intentionally omitted to prevent erasing of the coreboot header
>
> -  // record before it is processed by ParseMemoryInfo.
>
> +  // Report lower 640KB of RAM.
>
> +  // Mark memory as reserved to keep coreboot header in place.
>
>    //
>
>    BuildResourceDescriptorHob (
>
> -    EFI_RESOURCE_SYSTEM_MEMORY,
>
> +    EFI_RESOURCE_MEMORY_RESERVED,
>
>      (
>
>      EFI_RESOURCE_ATTRIBUTE_PRESENT |
>
>      EFI_RESOURCE_ATTRIBUTE_INITIALIZED |
>
> +    EFI_RESOURCE_ATTRIBUTE_TESTED |
>
>      EFI_RESOURCE_ATTRIBUTE_UNCACHEABLE |
>
>      EFI_RESOURCE_ATTRIBUTE_WRITE_COMBINEABLE |
>
>      EFI_RESOURCE_ATTRIBUTE_WRITE_THROUGH_CACHEABLE |
>
>      EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE
>
>      ),
>
>      (EFI_PHYSICAL_ADDRESS)(0),
>
> -    (UINT64)(0xA0000)
>
> +    (UINT64)(0x1000)
>
> +    );
>
> +
>
> +  BuildResourceDescriptorHob (
>
> +    EFI_RESOURCE_SYSTEM_MEMORY,
>
> +    (
>
> +    EFI_RESOURCE_ATTRIBUTE_PRESENT |
>
> +    EFI_RESOURCE_ATTRIBUTE_INITIALIZED |
>
> +    EFI_RESOURCE_ATTRIBUTE_UNCACHEABLE |
>
> +    EFI_RESOURCE_ATTRIBUTE_WRITE_COMBINEABLE |
>
> +    EFI_RESOURCE_ATTRIBUTE_WRITE_THROUGH_CACHEABLE |
>
> +    EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE
>
> +    ),
>
> +    (EFI_PHYSICAL_ADDRESS)(0x1000),
>
> +    (UINT64)(0x9F000)
>
>      );
>
>
>
>    BuildResourceDescriptorHob (
>
> --
> 2.27.0
>
>
> -=-=-=-=-=-=
> Groups.io Links: You receive all messages sent to this group.
>
> View/Reply Online (#62229): https://edk2.groups.io/g/devel/message/62229
> Mute This Topic: https://groups.io/mt/75374752/1781375
> Group Owner: devel+owner@edk2.groups.io
> Unsubscribe: https://edk2.groups.io/g/devel/unsub  [guo.dong@intel.com]
> -=-=-=-=-=-=


 

--

[Marcello Sylvester Bauer] 

 

9elements Agency GmbH, Kortumstraße 19-21, 44787 Bochum, Germany

 

Sitz der Gesellschaft: Bochum

Handelsregister: Amtsgericht Bochum, HRB 17519

Geschäftsführung: Sebastian Deutsch, Eray Basar