Thanks to capture and fix this issue. Reviewed-by: Guo Dong <guo.d...@intel.com>
-----Original Message----- From: Marvin Häuser <mhaeu...@posteo.de> Sent: Sunday, August 8, 2021 12:40 PM To: devel@edk2.groups.io Cc: Dong, Guo <guo.d...@intel.com>; Ni, Ray <ray...@intel.com>; Ma, Maurice <maurice...@intel.com>; You, Benjamin <benjamin....@intel.com>; Vitaly Cheptsov <vit9...@protonmail.com> Subject: [PATCH] UefiPayloadPkg/UefiPayloadEntry: Fix memory corruption UefiPayloadEntry's AllocatePool() applies the "sizeof" operator to HOB index rather than the HOB header structure. This yields 4 Bytes compared to the 8 Bytes the structure header requires. Fix the call to allocate the required space instead. Cc: Guo Dong <guo.d...@intel.com> Cc: Ray Ni <ray...@intel.com> Cc: Maurice Ma <maurice...@intel.com> Cc: Benjamin You <benjamin....@intel.com> Cc: Vitaly Cheptsov <vit9...@protonmail.com> Signed-off-by: Marvin Häuser <mhaeu...@posteo.de> --- UefiPayloadPkg/UefiPayloadEntry/MemoryAllocation.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UefiPayloadPkg/UefiPayloadEntry/MemoryAllocation.c b/UefiPayloadPkg/UefiPayloadEntry/MemoryAllocation.c index 1204573b3e09..f3494969e5ac 100644 --- a/UefiPayloadPkg/UefiPayloadEntry/MemoryAllocation.c +++ b/UefiPayloadPkg/UefiPayloadEntry/MemoryAllocation.c @@ -163,7 +163,7 @@ AllocatePool ( return NULL; } - Hob = (EFI_HOB_MEMORY_POOL *)CreateHob (EFI_HOB_TYPE_MEMORY_POOL, (UINT16)(sizeof (EFI_HOB_TYPE_MEMORY_POOL) + AllocationSize));+ Hob = (EFI_HOB_MEMORY_POOL *)CreateHob (EFI_HOB_TYPE_MEMORY_POOL, (UINT16)(sizeof (EFI_HOB_MEMORY_POOL) + AllocationSize)); return (VOID *)(Hob + 1); } -- 2.31.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#79054): https://edk2.groups.io/g/devel/message/79054 Mute This Topic: https://groups.io/mt/84754069/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-