From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM04-SN1-obe.outbound.protection.outlook.com (NAM04-SN1-obe.outbound.protection.outlook.com [40.92.11.72]) by mx.groups.io with SMTP id smtpd.web11.42630.1609137386445066432 for ; Sun, 27 Dec 2020 22:36:26 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@outlook.com header.s=selector1 header.b=GypruS5l; spf=pass (domain: outlook.com, ip: 40.92.11.72, mailfrom: kun.q@outlook.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bV4rERUcYkUhHtqvAY2FsOExyQ15RXr/lvkr8pKC7oFu1E6D9rxykeW4yEY+lNqqocHR4LPKlmEmNzC1G4U63R6YdaM+40GEQqioi5zlqHEPd5RbCOuQUxOKp7mB7ROv3Z1dCOS/YjuofOn6Nd0SUoUGJzPzQ5Vr2dJKmAaXdxzKlS38nreSWM8QcONLJ3uR/jA0gHfQPgg62sQ8uDBVgtjoZAoreIoiDh9dGiwlZI+oLBPcqskl+3MEwbs8rrvZIll5IDg7IV8RsS4GhPj+mk/SduLMdOBkq4sX5Q6Yet13jP1/5wt2vOo8mVnBTCkBNuFOD0Vjo0gz2dQpwAt2PA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ozoIA4iCQKbt9OB4Wn8QTbkXv03XebXFGL6R2+sP+go=; b=P2/tzfrWwxb9lIeEUPCYhgCpGh+Ubv3it/A8t4lJvNMDBllquryzY9Jjo4tnJejRqfePPiXfFWbmmqV+WR1fpRTg4aEFc/Fei9LJoWov7fQjSpwb71JOjrk0GPWKHC9ezEb176zd2BXveY+N7ALdXb3BZpgJP5e2yqcRrwB4XXvzgqitR4A1HzjEPquXywizzQxlbzevadZ7BBQiJ5jakE2Pb81MGExNRP6t71ePsOixy2W19KGs6SBX73kgoa5zBsq5u99VfpzpYTwmDSrguZ4IcFXundPfFb2f7vFPqe0AdJJbXmgKFUrOiYdG7Chlh4CkI235dGYhSeLxXE+LSA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ozoIA4iCQKbt9OB4Wn8QTbkXv03XebXFGL6R2+sP+go=; b=GypruS5lT62UagdhZZFER69K6vidUkGed2e7cIE4alt281gsukC23fFT+NInELyc1r/0UbMwnrfix62k4DOZMV3S/vK46O3GBIQUH787OfPrrVyWuUFpBWv9U3xm24e3xFoNEGHzrN32KaYnbV+jhEAxX7fhMq72bHGC9fnUlKGwkjhoiEGGiURWXsnK47sJLxGLt/4FY/79QYgPyiKolLj1VNTWIA+Z1oopBK1TG0YfZaPWLXox7oMO/jCETZF8tXw5TEp4DX4bdAkobGh6C/lDJ73rHIN6UUzec8nV6Kx+O3/YRembIBohMt+TqwFIJDtoaKEBrctQAQ4VClITIg== Received: from SN1NAM04FT036.eop-NAM04.prod.protection.outlook.com (10.152.88.52) by SN1NAM04HT195.eop-NAM04.prod.protection.outlook.com (10.152.89.163) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3700.27; Mon, 28 Dec 2020 06:36:25 +0000 Received: from MWHPR06MB3102.namprd06.prod.outlook.com (2a01:111:e400:7e4c::47) by SN1NAM04FT036.mail.protection.outlook.com (2a01:111:e400:7e4c::405) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3700.27 via Frontend Transport; Mon, 28 Dec 2020 06:36:25 +0000 Received: from MWHPR06MB3102.namprd06.prod.outlook.com ([fe80::acb3:ab69:563d:b0d6]) by MWHPR06MB3102.namprd06.prod.outlook.com ([fe80::acb3:ab69:563d:b0d6%5]) with mapi id 15.20.3676.035; Mon, 28 Dec 2020 06:36:25 +0000 From: "Kun Qin" To: "Yao, Jiewen" , "devel@edk2.groups.io" CC: Ard Biesheuvel , Sami Mujawar , Supreeth Venkatesh Subject: Re: [PATCH v1 04/15] StandaloneMmPkg: StandaloneMmMemLib: Extends support for X64 architecture Thread-Topic: [PATCH v1 04/15] StandaloneMmPkg: StandaloneMmMemLib: Extends support for X64 architecture Thread-Index: AQHW1W6n7OPNuBsfz02gKe4Obw+H9KoLsxMAgABABnOAACYbAIAAAa4X Date: Mon, 28 Dec 2020 06:36:24 +0000 Message-ID: References: <20201218185011.1366-1-kun.q@outlook.com> , , In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-incomingtopheadermarker: OriginalChecksum:ED61F329B3EE01EFE686A3BACAB3F56D84E2E02FC29B0FD9FEF67E67D11D8CC1;UpperCasedChecksum:773F2C3498A14F6D6977596698B0D0B28998E043FB70BB0016080AA4A0597EEF;SizeAsReceived:7395;Count:44 x-tmn: [Y6XqGF2ejIxkv8cb4YVaXA3TtXW/twSw] x-ms-publictraffictype: Email x-incomingheadercount: 44 x-eopattributedmessage: 0 x-ms-office365-filtering-correlation-id: 2271ebd7-9ff0-49a2-1c3f-08d8aafae60f x-ms-traffictypediagnostic: SN1NAM04HT195: x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 4T/oC02ljBHK4qmg+otaMFglHKDqijNFiec9t0HCDq920Q+1R9cSg95WS19M2JmAJluy18AGIkPQCftATy9UDptYjsoLn35uy9vL+D+JYuwMer1Knk9p2tBLyB/Z65iCIBaKnOZsb8bCtNrms7jAtqxkP00Kut/QtzszdZf5Yv75Hx1lkizeBXJqHitTqN0Mvv2IuC+L5hSazaJaW1CxNi+GEsYiQP0fRiDlMjd9/pDvHYjd5wXbomEV2ZvVkyP5 x-ms-exchange-antispam-messagedata: FfiSPDup3y7dSrH20GhbNMziAefqZNmQn7B6TOiRCL8Q6L8cBtnE5mxDsMKzUV4BR1lKMkdtz+ByXEA1k4PhArI9hKA2UBCtPmx4WyvrU28YqjPkmP6bR76fANCWyfo7gUhrjCaVbcSxOdvkJVNOKQ== x-ms-exchange-transport-forked: True MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-AuthSource: SN1NAM04FT036.eop-NAM04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 2271ebd7-9ff0-49a2-1c3f-08d8aafae60f X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Dec 2020 06:36:25.0081 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Internet X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1NAM04HT195 Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_MWHPR06MB3102E2CFC2A9596F203448AAF3D90MWHPR06MB3102namp_" --_000_MWHPR06MB3102E2CFC2A9596F203448AAF3D90MWHPR06MB3102namp_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Understood, not including this library for x86 will fail CI build on some n= ew drivers in this patch series, so we will need to give it a full fix. I w= ill add the fix at least for x86 in patch v2. Thanks, Kun From: Yao, Jiewen Sent: Sunday, December 27, 2020 22:24 To: Kun Qin; devel@edk2.groups.io Cc: Ard Biesheuvel; Sami Mujawar; Supreeth Venkatesh Subject: RE: [PATCH v1 04/15] StandaloneMmPkg: StandaloneMmMemLib: Extends = support for X64 architecture I am not familiar with AArch64. So I will let ARM people comment it. For X86, I think it is security hole, if we do not fill mMmMemLibInternalMm= ramRanges. A partial fix with known security vulnerability is not the best idea. I prefer to we give a full fix, or no fix it in V2. Thank you Yao Jiewen From: Kun Qin Sent: Monday, December 28, 2020 12:15 PM To: Yao, Jiewen ; devel@edk2.groups.io Cc: Ard Biesheuvel ; Sami Mujawar ; Supreeth Venkatesh Subject: RE: [PATCH v1 04/15] StandaloneMmPkg: StandaloneMmMemLib: Extends = support for X64 architecture Hi Jiewen, I did not fill these 2 variables for this patch because I thought to follow= up fix for this issue separately because the AARCH64 instance does not fil= l it either and I meant for this patch to solely extends the coverage to x6= 4 (and IA32). But please let me know if you think otherwise, I can add the = x64 fix in this patch as well. But I do not have fix for AARCH64 since I am= not familiar with how it should work. Thanks, Kun From: Yao, Jiewen Sent: Sunday, December 27, 2020 16:18 To: Kun Qin; devel@edk2.groups.io Cc: Ard Biesheuvel; Sami Mujawar; Supreeth Venkatesh Subject: RE: [PATCH v1 04/15] StandaloneMmPkg: StandaloneMmMemLib: Extends = support for X64 architecture May I know where is the code to fill below? EFI_MMRAM_DESCRIPTOR *mMmMemLibInternalMmramRanges; UINTN mMmMemLibInternalMmramCount; > -----Original Message----- > From: Kun Qin > > Sent: Saturday, December 19, 2020 2:50 AM > To: devel@edk2.groups.io > Cc: Ard Biesheuvel = >; Sami Mujawar > >; Yao, Jiewen >; Supreeth > Venkatesh > > Subject: [PATCH v1 04/15] StandaloneMmPkg: StandaloneMmMemLib: > Extends support for X64 architecture > > This change extends StandaloneMmMemLib library to support X64 > architecture. The implementation is ported from > MdePkg/Library/SmmMemLib. > > Cc: Ard Biesheuvel = > > Cc: Sami Mujawar > > Cc: Jiewen Yao > > Cc: Supreeth Venkatesh > > > Signed-off-by: Kun Qin > > --- > > StandaloneMmPkg/Library/StandaloneMmMemLib/X64/StandaloneMmMe > mLibInternal.c | 67 ++++++++++++++++++++ > > StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib > .inf | 6 +- > 2 files changed, 72 insertions(+), 1 deletion(-) > > diff --git > a/StandaloneMmPkg/Library/StandaloneMmMemLib/X64/StandaloneMm > MemLibInternal.c > b/StandaloneMmPkg/Library/StandaloneMmMemLib/X64/StandaloneMm > MemLibInternal.c > new file mode 100644 > index 000000000000..c5e21c583f44 > --- /dev/null > +++ > b/StandaloneMmPkg/Library/StandaloneMmMemLib/X64/StandaloneMm > MemLibInternal.c > @@ -0,0 +1,67 @@ > +/** @file > + Internal ARCH Specific file of MM memory check library. > + > + MM memory check library implementation. This library consumes > MM_ACCESS_PROTOCOL > + to get MMRAM information. In order to use this library instance, the > platform should produce > + all MMRAM range via MM_ACCESS_PROTOCOL, including the range for > firmware (like MM Core > + and MM driver) and/or specific dedicated hardware. > + > + Copyright (c) 2015, Intel Corporation. All rights reserved.
> + Copyright (c) 2016 - 2018, ARM Limited. All rights reserved.
> + > + SPDX-License-Identifier: BSD-2-Clause-Patent > + > +**/ > +#include > +#include > +#include > +#include > +// > +// Maximum support address used to check input buffer > +// > +extern EFI_PHYSICAL_ADDRESS > mMmMemLibInternalMaximumSupportAddress; > + > +/** > + Calculate and save the maximum support address. > + > +**/ > +VOID > +MmMemLibInternalCalculateMaximumSupportAddress ( > + VOID > + ) > +{ > + VOID *Hob; > + UINT32 RegEax; > + UINT8 PhysicalAddressBits; > + > + // > + // Get physical address bits supported. > + // > + Hob =3D GetFirstHob (EFI_HOB_TYPE_CPU); > + if (Hob !=3D NULL) { > + PhysicalAddressBits =3D ((EFI_HOB_CPU *) Hob)->SizeOfMemorySpace; > + } else { > + AsmCpuid (0x80000000, &RegEax, NULL, NULL, NULL); > + if (RegEax >=3D 0x80000008) { > + AsmCpuid (0x80000008, &RegEax, NULL, NULL, NULL); > + PhysicalAddressBits =3D (UINT8) RegEax; > + } else { > + PhysicalAddressBits =3D 36; > + } > + } > + // > + // IA-32e paging translates 48-bit linear addresses to 52-bit physical > addresses. > + // > + ASSERT (PhysicalAddressBits <=3D 52); > + if (PhysicalAddressBits > 48) { > + PhysicalAddressBits =3D 48; > + } > + > + // > + // Save the maximum support address in one global variable > + // > + mMmMemLibInternalMaximumSupportAddress =3D > (EFI_PHYSICAL_ADDRESS)(UINTN)(LShiftU64 (1, PhysicalAddressBits) - 1); > + DEBUG ((DEBUG_INFO, "mMmMemLibInternalMaximumSupportAddress > =3D 0x%lx\n", mMmMemLibInternalMaximumSupportAddress)); > +} > + > + > diff --git > a/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMem > Lib.inf > b/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMem > Lib.inf > index 49da02e54e6d..65ad0a48905c 100644 > --- > a/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMem > Lib.inf > +++ > b/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMem > Lib.inf > @@ -26,12 +26,15 @@ [Defines] > # > # The following information is for reference only and not required by th= e > build tools. > # > -# VALID_ARCHITECTURES =3D AARCH64 > +# VALID_ARCHITECTURES =3D X64 AARCH64 > # > > [Sources.Common] > StandaloneMmMemLib.c > > +[Sources.X64] > + X64/StandaloneMmMemLibInternal.c > + > [Sources.AARCH64] > AArch64/StandaloneMmMemLibInternal.c > > @@ -42,3 +45,4 @@ [Packages] > [LibraryClasses] > BaseMemoryLib > DebugLib > + HobLib > -- > 2.28.0.windows.1 --_000_MWHPR06MB3102E2CFC2A9596F203448AAF3D90MWHPR06MB3102namp_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

Understood, not including this library for x86 will = fail CI build on some new drivers in this patch series, so we will need to = give it a full fix. I will add the fix at least for x86 in patch v2.

 

Thanks,

Kun

 

From: Yao, Jiewen
Sent: Sunday, December 27, 2020 22:24
To: Kun Qin; devel@edk2.groups.io
Cc: Ard Biesheuvel; Sami Mujawar; Supreeth Ve= nkatesh
Subject: RE: [PATCH v1 04/15] StandaloneMmPkg: StandaloneMmMemLib: E= xtends support for X64 architecture

 

I am not familiar with AArch64. So I will let ARM pe= ople comment it.

 

For X86, I think it is security hole, if we do not f= ill mMmMemLibInternalMmramRanges.

 

A partial fix with known security vulnerability is n= ot the best idea.

 

I prefer to we give a full fix, or no fix it in V2.<= o:p>

 

Thank you

Yao Jiewen

 

 

From: Kun Qin <kun.q@outlook.com>
Sent: Monday, December 28, 2020 12:15 PM
To: Yao, Jiewen <jiewen.yao@intel.com>; devel@edk2.groups.io Cc: Ard Biesheuvel <ard.biesheuvel@arm.com>; Sami Mujawar <= sami.mujawar@arm.com>; Supreeth Venkatesh <supreeth.venkatesh@arm.com= >
Subject: RE: [PATCH v1 04/15] StandaloneMmPkg: StandaloneMmMemLib: E= xtends support for X64 architecture

 

Hi Jiewen,

 

I did not fill these 2 variables for this patch beca= use I thought to follow up fix for this issue separately because the AARCH6= 4 instance does not fill it either and I meant for this patch to solely ext= ends the coverage to x64 (and IA32). But please let me know if you think otherwise, I can add the x64 fix in th= is patch as well. But I do not have fix for AARCH64 since I am not familiar= with how it should work.

 

Thanks,

Kun

 

From: Yao, Jiewen
Sent: Sunday, December 27, 2020 16:18
To: Kun Qin; devel@edk2.groups.io
Cc: Ard Biesheuvel; Sami Mujawar; Supreeth Ve= nkatesh
Subject: RE: [PATCH v1 04/15] StandaloneMmPkg: StandaloneMmMemLib: E= xtends support for X64 architecture

 

May I know where is t= he code to fill below?
EFI_MMRAM_DESCRIPTOR *mMmMemLibInternalMmramRanges;
UINTN           &nbs= p;    mMmMemLibInternalMmramCount;



> -----Original Message-----
> From: Kun Qin <kun.q@outlook.c= om>
> Sent: Saturday, December 19, 2020 2:50 AM
> To: devel@edk2.groups.io > Cc: Ard Biesheuvel <ard.b= iesheuvel@arm.com>; Sami Mujawar
> <sami.mujawar@arm.com&g= t;; Yao, Jiewen <jiewen.yao@inte= l.com>; Supreeth
> Venkatesh <supreeth.v= enkatesh@arm.com>
> Subject: [PATCH v1 04/15] StandaloneMmPkg: StandaloneMmMemLib:
> Extends support for X64 architecture
>
> This change extends StandaloneMmMemLib library to support X64
> architecture. The implementation is ported from
> MdePkg/Library/SmmMemLib.
>
> Cc: Ard Biesheuvel <ard.b= iesheuvel@arm.com>
> Cc: Sami Mujawar <sami.muja= war@arm.com>
> Cc: Jiewen Yao <jiewen.yao@= intel.com>
> Cc: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
>
> Signed-off-by: Kun Qin <kun.q@= outlook.com>
> ---
>
> StandaloneMmPkg/Library/StandaloneMmMemLib/X64/StandaloneMmMe
> mLibInternal.c | 67 ++++++++++++++++++++
>
> StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib
> .inf           |&nbs= p; 6 +-
>  2 files changed, 72 insertions(+), 1 deletion(-)
>
> diff --git
> a/StandaloneMmPkg/Library/StandaloneMmMemLib/X64/StandaloneMm
> MemLibInternal.c
> b/StandaloneMmPkg/Library/StandaloneMmMemLib/X64/StandaloneMm
> MemLibInternal.c
> new file mode 100644
> index 000000000000..c5e21c583f44
> --- /dev/null
> +++
> b/StandaloneMmPkg/Library/StandaloneMmMemLib/X64/StandaloneMm
> MemLibInternal.c
> @@ -0,0 +1,67 @@
> +/** @file
> +  Internal ARCH Specific file of MM memory check library.
> +
> +  MM memory check library implementation. This library consumes<= br> > MM_ACCESS_PROTOCOL
> +  to get MMRAM information. In order to use this library instanc= e, the
> platform should produce
> +  all MMRAM range via MM_ACCESS_PROTOCOL, including the range fo= r
> firmware (like MM Core
> +  and MM driver) and/or specific dedicated hardware.
> +
> +  Copyright (c) 2015, Intel Corporation. All rights reserved.<= ;BR>
> +  Copyright (c) 2016 - 2018, ARM Limited. All rights reserved.&l= t;BR>
> +
> +  SPDX-License-Identifier: BSD-2-Clause-Patent
> +
> +**/
> +#include <Library/BaseLib.h>
> +#include <Library/BaseMemoryLib.h>
> +#include <Library/DebugLib.h>
> +#include <Library/HobLib.h>
> +//
> +// Maximum support address used to check input buffer
> +//
> +extern EFI_PHYSICAL_ADDRESS
> mMmMemLibInternalMaximumSupportAddress;
> +
> +/**
> +  Calculate and save the maximum support address.
> +
> +**/
> +VOID
> +MmMemLibInternalCalculateMaximumSupportAddress (
> +  VOID
> +  )
> +{
> +  VOID         *Hob;
> +  UINT32       RegEax;
> +  UINT8        PhysicalAddres= sBits;
> +
> +  //
> +  // Get physical address bits supported.
> +  //
> +  Hob =3D GetFirstHob (EFI_HOB_TYPE_CPU);
> +  if (Hob !=3D NULL) {
> +    PhysicalAddressBits =3D ((EFI_HOB_CPU *) Hob)->= SizeOfMemorySpace;
> +  } else {
> +    AsmCpuid (0x80000000, &RegEax, NULL, NULL, NUL= L);
> +    if (RegEax >=3D 0x80000008) {
> +      AsmCpuid (0x80000008, &RegEax, NUL= L, NULL, NULL);
> +      PhysicalAddressBits =3D (UINT8) RegEax= ;
> +    } else {
> +      PhysicalAddressBits =3D 36;
> +    }
> +  }
> +  //
> +  // IA-32e paging translates 48-bit linear addresses to 52-bit = physical
> addresses.
> +  //
> +  ASSERT (PhysicalAddressBits <=3D 52);
> +  if (PhysicalAddressBits > 48) {
> +    PhysicalAddressBits =3D 48;
> +  }
> +
> +  //
> +  // Save the maximum support address in one global variable
> +  //
> +  mMmMemLibInternalMaximumSupportAddress =3D
> (EFI_PHYSICAL_ADDRESS)(UINTN)(LShiftU64 (1, PhysicalAddressBits) - 1);=
> +  DEBUG ((DEBUG_INFO, "mMmMemLibInternalMaximumSupportAddre= ss
> =3D 0x%lx\n", mMmMemLibInternalMaximumSupportAddress));
> +}
> +
> +
> diff --git
> a/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMem
> Lib.inf
> b/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMem
> Lib.inf
> index 49da02e54e6d..65ad0a48905c 100644
> ---
> a/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMem
> Lib.inf
> +++
> b/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMem
> Lib.inf
> @@ -26,12 +26,15 @@ [Defines]
>  #
>  # The following information is for reference only and not requir= ed by the
> build tools.
>  #
> -#  VALID_ARCHITECTURES       =     =3D AARCH64
> +#  VALID_ARCHITECTURES       =     =3D X64 AARCH64
>  #
>
>  [Sources.Common]
>    StandaloneMmMemLib.c
>
> +[Sources.X64]
> +  X64/StandaloneMmMemLibInternal.c
> +
>  [Sources.AARCH64]
>    AArch64/StandaloneMmMemLibInternal.c
>
> @@ -42,3 +45,4 @@ [Packages]
>  [LibraryClasses]
>    BaseMemoryLib
>    DebugLib
> +  HobLib
> --
> 2.28.0.windows.1

 

 

--_000_MWHPR06MB3102E2CFC2A9596F203448AAF3D90MWHPR06MB3102namp_--