]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UefiCpuPkg/PiSmmCpuDxeSmm/SmmCpuMemoryManagement.c
UefiCpuPkg: Replace Opcode with the corresponding instructions.
[mirror_edk2.git] / UefiCpuPkg / PiSmmCpuDxeSmm / SmmCpuMemoryManagement.c
index 55090e9c3e4fe79b32fb561763a781faa9015223..1f7cc15727cd1e93ec2a3c547cc77392ef175c10 100644 (file)
@@ -17,22 +17,22 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #define PREVIOUS_MEMORY_DESCRIPTOR(MemoryDescriptor, Size) \\r
   ((EFI_MEMORY_DESCRIPTOR *)((UINT8 *)(MemoryDescriptor) - (Size)))\r
 \r
-EFI_MEMORY_DESCRIPTOR *mUefiMemoryMap;\r
-UINTN                 mUefiMemoryMapSize;\r
-UINTN                 mUefiDescriptorSize;\r
+EFI_MEMORY_DESCRIPTOR  *mUefiMemoryMap;\r
+UINTN                  mUefiMemoryMapSize;\r
+UINTN                  mUefiDescriptorSize;\r
 \r
-EFI_GCD_MEMORY_SPACE_DESCRIPTOR   *mGcdMemSpace       = NULL;\r
-UINTN                             mGcdMemNumberOfDesc = 0;\r
+EFI_GCD_MEMORY_SPACE_DESCRIPTOR  *mGcdMemSpace       = NULL;\r
+UINTN                            mGcdMemNumberOfDesc = 0;\r
 \r
 EFI_MEMORY_ATTRIBUTES_TABLE  *mUefiMemoryAttributesTable = NULL;\r
 \r
-PAGE_ATTRIBUTE_TABLE mPageAttributeTable[] = {\r
-  {Page4K,  SIZE_4KB, PAGING_4K_ADDRESS_MASK_64},\r
-  {Page2M,  SIZE_2MB, PAGING_2M_ADDRESS_MASK_64},\r
-  {Page1G,  SIZE_1GB, PAGING_1G_ADDRESS_MASK_64},\r
+PAGE_ATTRIBUTE_TABLE  mPageAttributeTable[] = {\r
+  { Page4K, SIZE_4KB, PAGING_4K_ADDRESS_MASK_64 },\r
+  { Page2M, SIZE_2MB, PAGING_2M_ADDRESS_MASK_64 },\r
+  { Page1G, SIZE_1GB, PAGING_1G_ADDRESS_MASK_64 },\r
 };\r
 \r
-UINTN  mInternalGr3;\r
+UINTN  mInternalCr3;\r
 \r
 /**\r
   Set the internal page table base address.\r
@@ -43,26 +43,10 @@ UINTN  mInternalGr3;
 **/\r
 VOID\r
 SetPageTableBase (\r
-  IN UINTN   Cr3\r
+  IN UINTN  Cr3\r
   )\r
 {\r
-  mInternalGr3 = Cr3;\r
-}\r
-\r
-/**\r
-  Return page table base.\r
-\r
-  @return page table base.\r
-**/\r
-UINTN\r
-GetPageTableBase (\r
-  VOID\r
-  )\r
-{\r
-  if (mInternalGr3 != 0) {\r
-    return mInternalGr3;\r
-  }\r
-  return (AsmReadCr3 () & PAGING_4K_ADDRESS_MASK_64);\r
+  mInternalCr3 = Cr3;\r
 }\r
 \r
 /**\r
@@ -78,11 +62,13 @@ PageAttributeToLength (
   )\r
 {\r
   UINTN  Index;\r
-  for (Index = 0; Index < sizeof(mPageAttributeTable)/sizeof(mPageAttributeTable[0]); Index++) {\r
+\r
+  for (Index = 0; Index < sizeof (mPageAttributeTable)/sizeof (mPageAttributeTable[0]); Index++) {\r
     if (PageAttribute == mPageAttributeTable[Index].Attribute) {\r
       return (UINTN)mPageAttributeTable[Index].Length;\r
     }\r
   }\r
+\r
   return 0;\r
 }\r
 \r
@@ -99,11 +85,13 @@ PageAttributeToMask (
   )\r
 {\r
   UINTN  Index;\r
-  for (Index = 0; Index < sizeof(mPageAttributeTable)/sizeof(mPageAttributeTable[0]); Index++) {\r
+\r
+  for (Index = 0; Index < sizeof (mPageAttributeTable)/sizeof (mPageAttributeTable[0]); Index++) {\r
     if (PageAttribute == mPageAttributeTable[Index].Attribute) {\r
       return (UINTN)mPageAttributeTable[Index].AddressMask;\r
     }\r
   }\r
+\r
   return 0;\r
 }\r
 \r
@@ -117,22 +105,24 @@ PageAttributeToMask (
 **/\r
 VOID *\r
 GetPageTableEntry (\r
-  IN  PHYSICAL_ADDRESS                  Address,\r
-  OUT PAGE_ATTRIBUTE                    *PageAttribute\r
+  IN  PHYSICAL_ADDRESS  Address,\r
+  OUT PAGE_ATTRIBUTE    *PageAttribute\r
   )\r
 {\r
-  UINTN                 Index1;\r
-  UINTN                 Index2;\r
-  UINTN                 Index3;\r
-  UINTN                 Index4;\r
-  UINTN                 Index5;\r
-  UINT64                *L1PageTable;\r
-  UINT64                *L2PageTable;\r
-  UINT64                *L3PageTable;\r
-  UINT64                *L4PageTable;\r
-  UINT64                *L5PageTable;\r
-  IA32_CR4              Cr4;\r
-  BOOLEAN               Enable5LevelPaging;\r
+  UINTN    Index1;\r
+  UINTN    Index2;\r
+  UINTN    Index3;\r
+  UINTN    Index4;\r
+  UINTN    Index5;\r
+  UINT64   *L1PageTable;\r
+  UINT64   *L2PageTable;\r
+  UINT64   *L3PageTable;\r
+  UINT64   *L4PageTable;\r
+  UINT64   *L5PageTable;\r
+  UINTN    PageTableBase;\r
+  BOOLEAN  Enable5LevelPaging;\r
+\r
+  GetPageTable (&PageTableBase, &Enable5LevelPaging);\r
 \r
   Index5 = ((UINTN)RShiftU64 (Address, 48)) & PAGING_PAE_INDEX_MASK;\r
   Index4 = ((UINTN)RShiftU64 (Address, 39)) & PAGING_PAE_INDEX_MASK;\r
@@ -140,12 +130,9 @@ GetPageTableEntry (
   Index2 = ((UINTN)Address >> 21) & PAGING_PAE_INDEX_MASK;\r
   Index1 = ((UINTN)Address >> 12) & PAGING_PAE_INDEX_MASK;\r
 \r
-  Cr4.UintN = AsmReadCr4 ();\r
-  Enable5LevelPaging = (BOOLEAN) (Cr4.Bits.LA57 == 1);\r
-\r
-  if (sizeof(UINTN) == sizeof(UINT64)) {\r
+  if (sizeof (UINTN) == sizeof (UINT64)) {\r
     if (Enable5LevelPaging) {\r
-      L5PageTable = (UINT64 *)GetPageTableBase ();\r
+      L5PageTable = (UINT64 *)PageTableBase;\r
       if (L5PageTable[Index5] == 0) {\r
         *PageAttribute = PageNone;\r
         return NULL;\r
@@ -153,8 +140,9 @@ GetPageTableEntry (
 \r
       L4PageTable = (UINT64 *)(UINTN)(L5PageTable[Index5] & ~mAddressEncMask & PAGING_4K_ADDRESS_MASK_64);\r
     } else {\r
-      L4PageTable = (UINT64 *)GetPageTableBase ();\r
+      L4PageTable = (UINT64 *)PageTableBase;\r
     }\r
+\r
     if (L4PageTable[Index4] == 0) {\r
       *PageAttribute = PageNone;\r
       return NULL;\r
@@ -162,12 +150,14 @@ GetPageTableEntry (
 \r
     L3PageTable = (UINT64 *)(UINTN)(L4PageTable[Index4] & ~mAddressEncMask & PAGING_4K_ADDRESS_MASK_64);\r
   } else {\r
-    L3PageTable = (UINT64 *)GetPageTableBase ();\r
+    L3PageTable = (UINT64 *)PageTableBase;\r
   }\r
+\r
   if (L3PageTable[Index3] == 0) {\r
     *PageAttribute = PageNone;\r
     return NULL;\r
   }\r
+\r
   if ((L3PageTable[Index3] & IA32_PG_PS) != 0) {\r
     // 1G\r
     *PageAttribute = Page1G;\r
@@ -179,6 +169,7 @@ GetPageTableEntry (
     *PageAttribute = PageNone;\r
     return NULL;\r
   }\r
+\r
   if ((L2PageTable[Index2] & IA32_PG_PS) != 0) {\r
     // 2M\r
     *PageAttribute = Page2M;\r
@@ -191,6 +182,7 @@ GetPageTableEntry (
     *PageAttribute = PageNone;\r
     return NULL;\r
   }\r
+\r
   *PageAttribute = Page4K;\r
   return &L1PageTable[Index1];\r
 }\r
@@ -204,20 +196,24 @@ GetPageTableEntry (
 **/\r
 UINT64\r
 GetAttributesFromPageEntry (\r
-  IN  UINT64                            *PageEntry\r
+  IN  UINT64  *PageEntry\r
   )\r
 {\r
   UINT64  Attributes;\r
+\r
   Attributes = 0;\r
   if ((*PageEntry & IA32_PG_P) == 0) {\r
     Attributes |= EFI_MEMORY_RP;\r
   }\r
+\r
   if ((*PageEntry & IA32_PG_RW) == 0) {\r
     Attributes |= EFI_MEMORY_RO;\r
   }\r
+\r
   if ((*PageEntry & IA32_PG_NX) != 0) {\r
     Attributes |= EFI_MEMORY_XP;\r
   }\r
+\r
   return Attributes;\r
 }\r
 \r
@@ -231,17 +227,17 @@ GetAttributesFromPageEntry (
 **/\r
 VOID\r
 ConvertPageEntryAttribute (\r
-  IN  UINT64                            *PageEntry,\r
-  IN  UINT64                            Attributes,\r
-  IN  BOOLEAN                           IsSet,\r
-  OUT BOOLEAN                           *IsModified\r
+  IN  UINT64   *PageEntry,\r
+  IN  UINT64   Attributes,\r
+  IN  BOOLEAN  IsSet,\r
+  OUT BOOLEAN  *IsModified\r
   )\r
 {\r
   UINT64  CurrentPageEntry;\r
   UINT64  NewPageEntry;\r
 \r
   CurrentPageEntry = *PageEntry;\r
-  NewPageEntry = CurrentPageEntry;\r
+  NewPageEntry     = CurrentPageEntry;\r
   if ((Attributes & EFI_MEMORY_RP) != 0) {\r
     if (IsSet) {\r
       NewPageEntry &= ~(UINT64)IA32_PG_P;\r
@@ -249,10 +245,11 @@ ConvertPageEntryAttribute (
       NewPageEntry |= IA32_PG_P;\r
     }\r
   }\r
+\r
   if ((Attributes & EFI_MEMORY_RO) != 0) {\r
     if (IsSet) {\r
       NewPageEntry &= ~(UINT64)IA32_PG_RW;\r
-      if (mInternalGr3 != 0) {\r
+      if (mInternalCr3 != 0) {\r
         // Environment setup\r
         // ReadOnly page need set Dirty bit for shadow stack\r
         NewPageEntry |= IA32_PG_D;\r
@@ -267,6 +264,7 @@ ConvertPageEntryAttribute (
       NewPageEntry |= IA32_PG_RW;\r
     }\r
   }\r
+\r
   if ((Attributes & EFI_MEMORY_XP) != 0) {\r
     if (mXdSupported) {\r
       if (IsSet) {\r
@@ -276,6 +274,7 @@ ConvertPageEntryAttribute (
       }\r
     }\r
   }\r
+\r
   *PageEntry = NewPageEntry;\r
   if (CurrentPageEntry != NewPageEntry) {\r
     *IsModified = TRUE;\r
@@ -298,13 +297,13 @@ ConvertPageEntryAttribute (
 **/\r
 PAGE_ATTRIBUTE\r
 NeedSplitPage (\r
-  IN  PHYSICAL_ADDRESS                  BaseAddress,\r
-  IN  UINT64                            Length,\r
-  IN  UINT64                            *PageEntry,\r
-  IN  PAGE_ATTRIBUTE                    PageAttribute\r
+  IN  PHYSICAL_ADDRESS  BaseAddress,\r
+  IN  UINT64            Length,\r
+  IN  UINT64            *PageEntry,\r
+  IN  PAGE_ATTRIBUTE    PageAttribute\r
   )\r
 {\r
-  UINT64                PageEntryLength;\r
+  UINT64  PageEntryLength;\r
 \r
   PageEntryLength = PageAttributeToLength (PageAttribute);\r
 \r
@@ -332,14 +331,14 @@ NeedSplitPage (
 **/\r
 RETURN_STATUS\r
 SplitPage (\r
-  IN  UINT64                            *PageEntry,\r
-  IN  PAGE_ATTRIBUTE                    PageAttribute,\r
-  IN  PAGE_ATTRIBUTE                    SplitAttribute\r
+  IN  UINT64          *PageEntry,\r
+  IN  PAGE_ATTRIBUTE  PageAttribute,\r
+  IN  PAGE_ATTRIBUTE  SplitAttribute\r
   )\r
 {\r
-  UINT64   BaseAddress;\r
-  UINT64   *NewPageEntry;\r
-  UINTN    Index;\r
+  UINT64  BaseAddress;\r
+  UINT64  *NewPageEntry;\r
+  UINTN   Index;\r
 \r
   ASSERT (PageAttribute == Page2M || PageAttribute == Page1G);\r
 \r
@@ -354,10 +353,12 @@ SplitPage (
       if (NewPageEntry == NULL) {\r
         return RETURN_OUT_OF_RESOURCES;\r
       }\r
+\r
       BaseAddress = *PageEntry & PAGING_2M_ADDRESS_MASK_64;\r
-      for (Index = 0; Index < SIZE_4KB / sizeof(UINT64); Index++) {\r
+      for (Index = 0; Index < SIZE_4KB / sizeof (UINT64); Index++) {\r
         NewPageEntry[Index] = (BaseAddress + SIZE_4KB * Index) | mAddressEncMask | ((*PageEntry) & PAGE_PROGATE_BITS);\r
       }\r
+\r
       (*PageEntry) = (UINT64)(UINTN)NewPageEntry | mAddressEncMask | PAGE_ATTRIBUTE_BITS;\r
       return RETURN_SUCCESS;\r
     } else {\r
@@ -369,16 +370,18 @@ SplitPage (
     // No need support 1G->4K directly, we should use 1G->2M, then 2M->4K to get more compact page table.\r
     //\r
     ASSERT (SplitAttribute == Page2M || SplitAttribute == Page4K);\r
-    if ((SplitAttribute == Page2M || SplitAttribute == Page4K)) {\r
+    if (((SplitAttribute == Page2M) || (SplitAttribute == Page4K))) {\r
       NewPageEntry = AllocatePageTableMemory (1);\r
       DEBUG ((DEBUG_VERBOSE, "Split - 0x%x\n", NewPageEntry));\r
       if (NewPageEntry == NULL) {\r
         return RETURN_OUT_OF_RESOURCES;\r
       }\r
+\r
       BaseAddress = *PageEntry & PAGING_1G_ADDRESS_MASK_64;\r
-      for (Index = 0; Index < SIZE_4KB / sizeof(UINT64); Index++) {\r
+      for (Index = 0; Index < SIZE_4KB / sizeof (UINT64); Index++) {\r
         NewPageEntry[Index] = (BaseAddress + SIZE_2MB * Index) | mAddressEncMask | IA32_PG_PS | ((*PageEntry) & PAGE_PROGATE_BITS);\r
       }\r
+\r
       (*PageEntry) = (UINT64)(UINTN)NewPageEntry | mAddressEncMask | PAGE_ATTRIBUTE_BITS;\r
       return RETURN_SUCCESS;\r
     } else {\r
@@ -418,24 +421,24 @@ SplitPage (
 RETURN_STATUS\r
 EFIAPI\r
 ConvertMemoryPageAttributes (\r
-  IN  PHYSICAL_ADDRESS                  BaseAddress,\r
-  IN  UINT64                            Length,\r
-  IN  UINT64                            Attributes,\r
-  IN  BOOLEAN                           IsSet,\r
-  OUT BOOLEAN                           *IsSplitted,  OPTIONAL\r
-  OUT BOOLEAN                           *IsModified   OPTIONAL\r
+  IN  PHYSICAL_ADDRESS  BaseAddress,\r
+  IN  UINT64            Length,\r
+  IN  UINT64            Attributes,\r
+  IN  BOOLEAN           IsSet,\r
+  OUT BOOLEAN           *IsSplitted   OPTIONAL,\r
+  OUT BOOLEAN           *IsModified   OPTIONAL\r
   )\r
 {\r
-  UINT64                            *PageEntry;\r
-  PAGE_ATTRIBUTE                    PageAttribute;\r
-  UINTN                             PageEntryLength;\r
-  PAGE_ATTRIBUTE                    SplitAttribute;\r
-  RETURN_STATUS                     Status;\r
-  BOOLEAN                           IsEntryModified;\r
-  EFI_PHYSICAL_ADDRESS              MaximumSupportMemAddress;\r
+  UINT64                *PageEntry;\r
+  PAGE_ATTRIBUTE        PageAttribute;\r
+  UINTN                 PageEntryLength;\r
+  PAGE_ATTRIBUTE        SplitAttribute;\r
+  RETURN_STATUS         Status;\r
+  BOOLEAN               IsEntryModified;\r
+  EFI_PHYSICAL_ADDRESS  MaximumSupportMemAddress;\r
 \r
   ASSERT (Attributes != 0);\r
-  ASSERT ((Attributes & ~(EFI_MEMORY_RP | EFI_MEMORY_RO | EFI_MEMORY_XP)) == 0);\r
+  ASSERT ((Attributes & ~EFI_MEMORY_ATTRIBUTE_MASK) == 0);\r
 \r
   ASSERT ((BaseAddress & (SIZE_4KB - 1)) == 0);\r
   ASSERT ((Length & (SIZE_4KB - 1)) == 0);\r
@@ -448,32 +451,36 @@ ConvertMemoryPageAttributes (
   if (BaseAddress > MaximumSupportMemAddress) {\r
     return RETURN_UNSUPPORTED;\r
   }\r
+\r
   if (Length > MaximumSupportMemAddress) {\r
     return RETURN_UNSUPPORTED;\r
   }\r
+\r
   if ((Length != 0) && (BaseAddress > MaximumSupportMemAddress - (Length - 1))) {\r
     return RETURN_UNSUPPORTED;\r
   }\r
 \r
-//  DEBUG ((DEBUG_ERROR, "ConvertMemoryPageAttributes(%x) - %016lx, %016lx, %02lx\n", IsSet, BaseAddress, Length, Attributes));\r
+  //  DEBUG ((DEBUG_ERROR, "ConvertMemoryPageAttributes(%x) - %016lx, %016lx, %02lx\n", IsSet, BaseAddress, Length, Attributes));\r
 \r
   if (IsSplitted != NULL) {\r
     *IsSplitted = FALSE;\r
   }\r
+\r
   if (IsModified != NULL) {\r
     *IsModified = FALSE;\r
   }\r
 \r
   //\r
-  // Below logic is to check 2M/4K page to make sure we donot waist memory.\r
+  // Below logic is to check 2M/4K page to make sure we do not waste memory.\r
   //\r
   while (Length != 0) {\r
     PageEntry = GetPageTableEntry (BaseAddress, &PageAttribute);\r
     if (PageEntry == NULL) {\r
       return RETURN_UNSUPPORTED;\r
     }\r
+\r
     PageEntryLength = PageAttributeToLength (PageAttribute);\r
-    SplitAttribute = NeedSplitPage (BaseAddress, Length, PageEntry, PageAttribute);\r
+    SplitAttribute  = NeedSplitPage (BaseAddress, Length, PageEntry, PageAttribute);\r
     if (SplitAttribute == PageNone) {\r
       ConvertPageEntryAttribute (PageEntry, Attributes, IsSet, &IsEntryModified);\r
       if (IsEntryModified) {\r
@@ -481,22 +488,26 @@ ConvertMemoryPageAttributes (
           *IsModified = TRUE;\r
         }\r
       }\r
+\r
       //\r
       // Convert success, move to next\r
       //\r
       BaseAddress += PageEntryLength;\r
-      Length -= PageEntryLength;\r
+      Length      -= PageEntryLength;\r
     } else {\r
       Status = SplitPage (PageEntry, PageAttribute, SplitAttribute);\r
       if (RETURN_ERROR (Status)) {\r
         return RETURN_UNSUPPORTED;\r
       }\r
+\r
       if (IsSplitted != NULL) {\r
         *IsSplitted = TRUE;\r
       }\r
+\r
       if (IsModified != NULL) {\r
         *IsModified = TRUE;\r
       }\r
+\r
       //\r
       // Just split current page\r
       // Convert success in next around\r
@@ -529,7 +540,7 @@ FlushTlbForAll (
   VOID\r
   )\r
 {\r
-  UINTN       Index;\r
+  UINTN  Index;\r
 \r
   FlushTlbOnCurrentProcessor (NULL);\r
 \r
@@ -568,22 +579,22 @@ FlushTlbForAll (
 EFI_STATUS\r
 EFIAPI\r
 SmmSetMemoryAttributesEx (\r
-  IN  EFI_PHYSICAL_ADDRESS                       BaseAddress,\r
-  IN  UINT64                                     Length,\r
-  IN  UINT64                                     Attributes,\r
-  OUT BOOLEAN                                    *IsSplitted  OPTIONAL\r
+  IN  EFI_PHYSICAL_ADDRESS  BaseAddress,\r
+  IN  UINT64                Length,\r
+  IN  UINT64                Attributes,\r
+  OUT BOOLEAN               *IsSplitted  OPTIONAL\r
   )\r
 {\r
   EFI_STATUS  Status;\r
   BOOLEAN     IsModified;\r
 \r
   Status = ConvertMemoryPageAttributes (BaseAddress, Length, Attributes, TRUE, IsSplitted, &IsModified);\r
-  if (!EFI_ERROR(Status)) {\r
+  if (!EFI_ERROR (Status)) {\r
     if (IsModified) {\r
       //\r
       // Flush TLB as last step\r
       //\r
-      FlushTlbForAll();\r
+      FlushTlbForAll ();\r
     }\r
   }\r
 \r
@@ -616,22 +627,22 @@ SmmSetMemoryAttributesEx (
 EFI_STATUS\r
 EFIAPI\r
 SmmClearMemoryAttributesEx (\r
-  IN  EFI_PHYSICAL_ADDRESS                       BaseAddress,\r
-  IN  UINT64                                     Length,\r
-  IN  UINT64                                     Attributes,\r
-  OUT BOOLEAN                                    *IsSplitted  OPTIONAL\r
+  IN  EFI_PHYSICAL_ADDRESS  BaseAddress,\r
+  IN  UINT64                Length,\r
+  IN  UINT64                Attributes,\r
+  OUT BOOLEAN               *IsSplitted  OPTIONAL\r
   )\r
 {\r
   EFI_STATUS  Status;\r
   BOOLEAN     IsModified;\r
 \r
   Status = ConvertMemoryPageAttributes (BaseAddress, Length, Attributes, FALSE, IsSplitted, &IsModified);\r
-  if (!EFI_ERROR(Status)) {\r
+  if (!EFI_ERROR (Status)) {\r
     if (IsModified) {\r
       //\r
       // Flush TLB as last step\r
       //\r
-      FlushTlbForAll();\r
+      FlushTlbForAll ();\r
     }\r
   }\r
 \r
@@ -663,9 +674,9 @@ SmmClearMemoryAttributesEx (
 EFI_STATUS\r
 EFIAPI\r
 SmmSetMemoryAttributes (\r
-  IN  EFI_PHYSICAL_ADDRESS                       BaseAddress,\r
-  IN  UINT64                                     Length,\r
-  IN  UINT64                                     Attributes\r
+  IN  EFI_PHYSICAL_ADDRESS  BaseAddress,\r
+  IN  UINT64                Length,\r
+  IN  UINT64                Attributes\r
   )\r
 {\r
   return SmmSetMemoryAttributesEx (BaseAddress, Length, Attributes, NULL);\r
@@ -696,9 +707,9 @@ SmmSetMemoryAttributes (
 EFI_STATUS\r
 EFIAPI\r
 SmmClearMemoryAttributes (\r
-  IN  EFI_PHYSICAL_ADDRESS                       BaseAddress,\r
-  IN  UINT64                                     Length,\r
-  IN  UINT64                                     Attributes\r
+  IN  EFI_PHYSICAL_ADDRESS  BaseAddress,\r
+  IN  UINT64                Length,\r
+  IN  UINT64                Attributes\r
   )\r
 {\r
   return SmmClearMemoryAttributesEx (BaseAddress, Length, Attributes, NULL);\r
@@ -715,9 +726,9 @@ SmmClearMemoryAttributes (
 **/\r
 EFI_STATUS\r
 SetShadowStack (\r
-  IN  UINTN                                      Cr3,\r
-  IN  EFI_PHYSICAL_ADDRESS                       BaseAddress,\r
-  IN  UINT64                                     Length\r
+  IN  UINTN                 Cr3,\r
+  IN  EFI_PHYSICAL_ADDRESS  BaseAddress,\r
+  IN  UINT64                Length\r
   )\r
 {\r
   EFI_STATUS  Status;\r
@@ -742,9 +753,9 @@ SetShadowStack (
 **/\r
 EFI_STATUS\r
 SetNotPresentPage (\r
-  IN  UINTN                                      Cr3,\r
-  IN  EFI_PHYSICAL_ADDRESS                       BaseAddress,\r
-  IN  UINT64                                     Length\r
+  IN  UINTN                 Cr3,\r
+  IN  EFI_PHYSICAL_ADDRESS  BaseAddress,\r
+  IN  UINT64                Length\r
   )\r
 {\r
   EFI_STATUS  Status;\r
@@ -776,7 +787,7 @@ SmmGetSystemConfigurationTable (
   OUT VOID      **Table\r
   )\r
 {\r
-  UINTN             Index;\r
+  UINTN  Index;\r
 \r
   ASSERT (TableGuid != NULL);\r
   ASSERT (Table != NULL);\r
@@ -806,11 +817,11 @@ PatchSmmSaveStateMap (
   UINTN  TileSize;\r
 \r
   TileCodeSize = GetSmiHandlerSize ();\r
-  TileCodeSize = ALIGN_VALUE(TileCodeSize, SIZE_4KB);\r
+  TileCodeSize = ALIGN_VALUE (TileCodeSize, SIZE_4KB);\r
   TileDataSize = (SMRAM_SAVE_STATE_MAP_OFFSET - SMM_PSD_OFFSET) + sizeof (SMRAM_SAVE_STATE_MAP);\r
-  TileDataSize = ALIGN_VALUE(TileDataSize, SIZE_4KB);\r
-  TileSize = TileDataSize + TileCodeSize - 1;\r
-  TileSize = 2 * GetPowerOfTwo32 ((UINT32)TileSize);\r
+  TileDataSize = ALIGN_VALUE (TileDataSize, SIZE_4KB);\r
+  TileSize     = TileDataSize + TileCodeSize - 1;\r
+  TileSize     = 2 * GetPowerOfTwo32 ((UINT32)TileSize);\r
 \r
   DEBUG ((DEBUG_INFO, "PatchSmmSaveStateMap:\n"));\r
   for (Index = 0; Index < mMaxNumberOfCpus - 1; Index++) {\r
@@ -880,8 +891,8 @@ PatchGdtIdtMap (
   VOID\r
   )\r
 {\r
-  EFI_PHYSICAL_ADDRESS       BaseAddress;\r
-  UINTN                      Size;\r
+  EFI_PHYSICAL_ADDRESS  BaseAddress;\r
+  UINTN                 Size;\r
 \r
   //\r
   // GDT\r
@@ -889,7 +900,7 @@ PatchGdtIdtMap (
   DEBUG ((DEBUG_INFO, "PatchGdtIdtMap - GDT:\n"));\r
 \r
   BaseAddress = mGdtBuffer;\r
-  Size = ALIGN_VALUE(mGdtBufferSize, SIZE_4KB);\r
+  Size        = ALIGN_VALUE (mGdtBufferSize, SIZE_4KB);\r
   //\r
   // The range should have been set to RO\r
   // if it is allocated with EfiRuntimeServicesCode.\r
@@ -906,7 +917,7 @@ PatchGdtIdtMap (
   DEBUG ((DEBUG_INFO, "PatchGdtIdtMap - IDT:\n"));\r
 \r
   BaseAddress = gcSmiIdtr.Base;\r
-  Size = ALIGN_VALUE(gcSmiIdtr.Limit + 1, SIZE_4KB);\r
+  Size        = ALIGN_VALUE (gcSmiIdtr.Limit + 1, SIZE_4KB);\r
   //\r
   // The range should have been set to RO\r
   // if it is allocated with EfiRuntimeServicesCode.\r
@@ -926,17 +937,17 @@ SetMemMapAttributes (
   VOID\r
   )\r
 {\r
-  EFI_MEMORY_DESCRIPTOR                     *MemoryMap;\r
-  EFI_MEMORY_DESCRIPTOR                     *MemoryMapStart;\r
-  UINTN                                     MemoryMapEntryCount;\r
-  UINTN                                     DescriptorSize;\r
-  UINTN                                     Index;\r
-  EDKII_PI_SMM_MEMORY_ATTRIBUTES_TABLE      *MemoryAttributesTable;\r
+  EFI_MEMORY_DESCRIPTOR                 *MemoryMap;\r
+  EFI_MEMORY_DESCRIPTOR                 *MemoryMapStart;\r
+  UINTN                                 MemoryMapEntryCount;\r
+  UINTN                                 DescriptorSize;\r
+  UINTN                                 Index;\r
+  EDKII_PI_SMM_MEMORY_ATTRIBUTES_TABLE  *MemoryAttributesTable;\r
 \r
   SmmGetSystemConfigurationTable (&gEdkiiPiSmmMemoryAttributesTableGuid, (VOID **)&MemoryAttributesTable);\r
   if (MemoryAttributesTable == NULL) {\r
     DEBUG ((DEBUG_INFO, "MemoryAttributesTable - NULL\n"));\r
-    return ;\r
+    return;\r
   }\r
 \r
   DEBUG ((DEBUG_INFO, "MemoryAttributesTable:\n"));\r
@@ -945,9 +956,9 @@ SetMemMapAttributes (
   DEBUG ((DEBUG_INFO, "  DescriptorSize            - 0x%08x\n", MemoryAttributesTable->DescriptorSize));\r
 \r
   MemoryMapEntryCount = MemoryAttributesTable->NumberOfEntries;\r
-  DescriptorSize = MemoryAttributesTable->DescriptorSize;\r
-  MemoryMapStart = (EFI_MEMORY_DESCRIPTOR *)(MemoryAttributesTable + 1);\r
-  MemoryMap = MemoryMapStart;\r
+  DescriptorSize      = MemoryAttributesTable->DescriptorSize;\r
+  MemoryMapStart      = (EFI_MEMORY_DESCRIPTOR *)(MemoryAttributesTable + 1);\r
+  MemoryMap           = MemoryMapStart;\r
   for (Index = 0; Index < MemoryMapEntryCount; Index++) {\r
     DEBUG ((DEBUG_INFO, "Entry (0x%x)\n", MemoryMap));\r
     DEBUG ((DEBUG_INFO, "  Type              - 0x%x\n", MemoryMap->Type));\r
@@ -955,42 +966,43 @@ SetMemMapAttributes (
     DEBUG ((DEBUG_INFO, "  VirtualStart      - 0x%016lx\n", MemoryMap->VirtualStart));\r
     DEBUG ((DEBUG_INFO, "  NumberOfPages     - 0x%016lx\n", MemoryMap->NumberOfPages));\r
     DEBUG ((DEBUG_INFO, "  Attribute         - 0x%016lx\n", MemoryMap->Attribute));\r
-    MemoryMap = NEXT_MEMORY_DESCRIPTOR(MemoryMap, DescriptorSize);\r
+    MemoryMap = NEXT_MEMORY_DESCRIPTOR (MemoryMap, DescriptorSize);\r
   }\r
 \r
   MemoryMap = MemoryMapStart;\r
   for (Index = 0; Index < MemoryMapEntryCount; Index++) {\r
     DEBUG ((DEBUG_VERBOSE, "SetAttribute: Memory Entry - 0x%lx, 0x%x\n", MemoryMap->PhysicalStart, MemoryMap->NumberOfPages));\r
     switch (MemoryMap->Type) {\r
-    case EfiRuntimeServicesCode:\r
-      SmmSetMemoryAttributes (\r
-        MemoryMap->PhysicalStart,\r
-        EFI_PAGES_TO_SIZE((UINTN)MemoryMap->NumberOfPages),\r
-        EFI_MEMORY_RO\r
-        );\r
-      break;\r
-    case EfiRuntimeServicesData:\r
-      SmmSetMemoryAttributes (\r
-        MemoryMap->PhysicalStart,\r
-        EFI_PAGES_TO_SIZE((UINTN)MemoryMap->NumberOfPages),\r
-        EFI_MEMORY_XP\r
-        );\r
-      break;\r
-    default:\r
-      SmmSetMemoryAttributes (\r
-        MemoryMap->PhysicalStart,\r
-        EFI_PAGES_TO_SIZE((UINTN)MemoryMap->NumberOfPages),\r
-        EFI_MEMORY_XP\r
-        );\r
-      break;\r
+      case EfiRuntimeServicesCode:\r
+        SmmSetMemoryAttributes (\r
+          MemoryMap->PhysicalStart,\r
+          EFI_PAGES_TO_SIZE ((UINTN)MemoryMap->NumberOfPages),\r
+          EFI_MEMORY_RO\r
+          );\r
+        break;\r
+      case EfiRuntimeServicesData:\r
+        SmmSetMemoryAttributes (\r
+          MemoryMap->PhysicalStart,\r
+          EFI_PAGES_TO_SIZE ((UINTN)MemoryMap->NumberOfPages),\r
+          EFI_MEMORY_XP\r
+          );\r
+        break;\r
+      default:\r
+        SmmSetMemoryAttributes (\r
+          MemoryMap->PhysicalStart,\r
+          EFI_PAGES_TO_SIZE ((UINTN)MemoryMap->NumberOfPages),\r
+          EFI_MEMORY_XP\r
+          );\r
+        break;\r
     }\r
-    MemoryMap = NEXT_MEMORY_DESCRIPTOR(MemoryMap, DescriptorSize);\r
+\r
+    MemoryMap = NEXT_MEMORY_DESCRIPTOR (MemoryMap, DescriptorSize);\r
   }\r
 \r
   PatchSmmSaveStateMap ();\r
   PatchGdtIdtMap ();\r
 \r
-  return ;\r
+  return;\r
 }\r
 \r
 /**\r
@@ -1009,27 +1021,27 @@ SortMemoryMap (
   IN UINTN                      DescriptorSize\r
   )\r
 {\r
-  EFI_MEMORY_DESCRIPTOR       *MemoryMapEntry;\r
-  EFI_MEMORY_DESCRIPTOR       *NextMemoryMapEntry;\r
-  EFI_MEMORY_DESCRIPTOR       *MemoryMapEnd;\r
-  EFI_MEMORY_DESCRIPTOR       TempMemoryMap;\r
+  EFI_MEMORY_DESCRIPTOR  *MemoryMapEntry;\r
+  EFI_MEMORY_DESCRIPTOR  *NextMemoryMapEntry;\r
+  EFI_MEMORY_DESCRIPTOR  *MemoryMapEnd;\r
+  EFI_MEMORY_DESCRIPTOR  TempMemoryMap;\r
 \r
-  MemoryMapEntry = MemoryMap;\r
+  MemoryMapEntry     = MemoryMap;\r
   NextMemoryMapEntry = NEXT_MEMORY_DESCRIPTOR (MemoryMapEntry, DescriptorSize);\r
-  MemoryMapEnd = (EFI_MEMORY_DESCRIPTOR *) ((UINT8 *) MemoryMap + MemoryMapSize);\r
+  MemoryMapEnd       = (EFI_MEMORY_DESCRIPTOR *)((UINT8 *)MemoryMap + MemoryMapSize);\r
   while (MemoryMapEntry < MemoryMapEnd) {\r
     while (NextMemoryMapEntry < MemoryMapEnd) {\r
       if (MemoryMapEntry->PhysicalStart > NextMemoryMapEntry->PhysicalStart) {\r
-        CopyMem (&TempMemoryMap, MemoryMapEntry, sizeof(EFI_MEMORY_DESCRIPTOR));\r
-        CopyMem (MemoryMapEntry, NextMemoryMapEntry, sizeof(EFI_MEMORY_DESCRIPTOR));\r
-        CopyMem (NextMemoryMapEntry, &TempMemoryMap, sizeof(EFI_MEMORY_DESCRIPTOR));\r
+        CopyMem (&TempMemoryMap, MemoryMapEntry, sizeof (EFI_MEMORY_DESCRIPTOR));\r
+        CopyMem (MemoryMapEntry, NextMemoryMapEntry, sizeof (EFI_MEMORY_DESCRIPTOR));\r
+        CopyMem (NextMemoryMapEntry, &TempMemoryMap, sizeof (EFI_MEMORY_DESCRIPTOR));\r
       }\r
 \r
       NextMemoryMapEntry = NEXT_MEMORY_DESCRIPTOR (NextMemoryMapEntry, DescriptorSize);\r
     }\r
 \r
-    MemoryMapEntry      = NEXT_MEMORY_DESCRIPTOR (MemoryMapEntry, DescriptorSize);\r
-    NextMemoryMapEntry  = NEXT_MEMORY_DESCRIPTOR (MemoryMapEntry, DescriptorSize);\r
+    MemoryMapEntry     = NEXT_MEMORY_DESCRIPTOR (MemoryMapEntry, DescriptorSize);\r
+    NextMemoryMapEntry = NEXT_MEMORY_DESCRIPTOR (MemoryMapEntry, DescriptorSize);\r
   }\r
 }\r
 \r
@@ -1051,21 +1063,21 @@ IsUefiPageNotPresent (
   )\r
 {\r
   switch (MemoryMap->Type) {\r
-  case EfiLoaderCode:\r
-  case EfiLoaderData:\r
-  case EfiBootServicesCode:\r
-  case EfiBootServicesData:\r
-  case EfiConventionalMemory:\r
-  case EfiUnusableMemory:\r
-  case EfiACPIReclaimMemory:\r
-    return TRUE;\r
-  default:\r
-    return FALSE;\r
+    case EfiLoaderCode:\r
+    case EfiLoaderData:\r
+    case EfiBootServicesCode:\r
+    case EfiBootServicesData:\r
+    case EfiConventionalMemory:\r
+    case EfiUnusableMemory:\r
+    case EfiACPIReclaimMemory:\r
+      return TRUE;\r
+    default:\r
+      return FALSE;\r
   }\r
 }\r
 \r
 /**\r
-  Merge continous memory map entries whose type is\r
+  Merge continuous memory map entries whose type is\r
   EfiLoaderCode/Data, EfiBootServicesCode/Data, EfiConventionalMemory,\r
   EfiUnusableMemory, EfiACPIReclaimMemory, because the memory described by\r
   these entries will be set as NOT present in SMM page table.\r
@@ -1086,24 +1098,25 @@ MergeMemoryMapForNotPresentEntry (
   IN UINTN                      DescriptorSize\r
   )\r
 {\r
-  EFI_MEMORY_DESCRIPTOR       *MemoryMapEntry;\r
-  EFI_MEMORY_DESCRIPTOR       *MemoryMapEnd;\r
-  UINT64                      MemoryBlockLength;\r
-  EFI_MEMORY_DESCRIPTOR       *NewMemoryMapEntry;\r
-  EFI_MEMORY_DESCRIPTOR       *NextMemoryMapEntry;\r
+  EFI_MEMORY_DESCRIPTOR  *MemoryMapEntry;\r
+  EFI_MEMORY_DESCRIPTOR  *MemoryMapEnd;\r
+  UINT64                 MemoryBlockLength;\r
+  EFI_MEMORY_DESCRIPTOR  *NewMemoryMapEntry;\r
+  EFI_MEMORY_DESCRIPTOR  *NextMemoryMapEntry;\r
 \r
-  MemoryMapEntry = MemoryMap;\r
+  MemoryMapEntry    = MemoryMap;\r
   NewMemoryMapEntry = MemoryMap;\r
-  MemoryMapEnd = (EFI_MEMORY_DESCRIPTOR *) ((UINT8 *) MemoryMap + *MemoryMapSize);\r
+  MemoryMapEnd      = (EFI_MEMORY_DESCRIPTOR *)((UINT8 *)MemoryMap + *MemoryMapSize);\r
   while ((UINTN)MemoryMapEntry < (UINTN)MemoryMapEnd) {\r
-    CopyMem (NewMemoryMapEntry, MemoryMapEntry, sizeof(EFI_MEMORY_DESCRIPTOR));\r
+    CopyMem (NewMemoryMapEntry, MemoryMapEntry, sizeof (EFI_MEMORY_DESCRIPTOR));\r
     NextMemoryMapEntry = NEXT_MEMORY_DESCRIPTOR (MemoryMapEntry, DescriptorSize);\r
 \r
     do {\r
-      MemoryBlockLength = (UINT64) (EFI_PAGES_TO_SIZE((UINTN)MemoryMapEntry->NumberOfPages));\r
+      MemoryBlockLength = (UINT64)(EFI_PAGES_TO_SIZE ((UINTN)MemoryMapEntry->NumberOfPages));\r
       if (((UINTN)NextMemoryMapEntry < (UINTN)MemoryMapEnd) &&\r
-          IsUefiPageNotPresent(MemoryMapEntry) && IsUefiPageNotPresent(NextMemoryMapEntry) &&\r
-          ((MemoryMapEntry->PhysicalStart + MemoryBlockLength) == NextMemoryMapEntry->PhysicalStart)) {\r
+          IsUefiPageNotPresent (MemoryMapEntry) && IsUefiPageNotPresent (NextMemoryMapEntry) &&\r
+          ((MemoryMapEntry->PhysicalStart + MemoryBlockLength) == NextMemoryMapEntry->PhysicalStart))\r
+      {\r
         MemoryMapEntry->NumberOfPages += NextMemoryMapEntry->NumberOfPages;\r
         if (NewMemoryMapEntry != MemoryMapEntry) {\r
           NewMemoryMapEntry->NumberOfPages += NextMemoryMapEntry->NumberOfPages;\r
@@ -1117,13 +1130,13 @@ MergeMemoryMapForNotPresentEntry (
       }\r
     } while (TRUE);\r
 \r
-    MemoryMapEntry = NEXT_MEMORY_DESCRIPTOR (MemoryMapEntry, DescriptorSize);\r
+    MemoryMapEntry    = NEXT_MEMORY_DESCRIPTOR (MemoryMapEntry, DescriptorSize);\r
     NewMemoryMapEntry = NEXT_MEMORY_DESCRIPTOR (NewMemoryMapEntry, DescriptorSize);\r
   }\r
 \r
   *MemoryMapSize = (UINTN)NewMemoryMapEntry - (UINTN)MemoryMap;\r
 \r
-  return ;\r
+  return;\r
 }\r
 \r
 /**\r
@@ -1141,15 +1154,16 @@ GetGcdMemoryMap (
 \r
   Status = gDS->GetMemorySpaceMap (&NumberOfDescriptors, &MemSpaceMap);\r
   if (EFI_ERROR (Status)) {\r
-    return ;\r
+    return;\r
   }\r
 \r
   mGcdMemNumberOfDesc = 0;\r
   for (Index = 0; Index < NumberOfDescriptors; Index++) {\r
-    if (MemSpaceMap[Index].GcdMemoryType == EfiGcdMemoryTypeReserved &&\r
-        (MemSpaceMap[Index].Capabilities & (EFI_MEMORY_PRESENT | EFI_MEMORY_INITIALIZED | EFI_MEMORY_TESTED)) ==\r
-          (EFI_MEMORY_PRESENT | EFI_MEMORY_INITIALIZED)\r
-          ) {\r
+    if ((MemSpaceMap[Index].GcdMemoryType == EfiGcdMemoryTypeReserved) &&\r
+        ((MemSpaceMap[Index].Capabilities & (EFI_MEMORY_PRESENT | EFI_MEMORY_INITIALIZED | EFI_MEMORY_TESTED)) ==\r
+         (EFI_MEMORY_PRESENT | EFI_MEMORY_INITIALIZED))\r
+        )\r
+    {\r
       mGcdMemNumberOfDesc++;\r
     }\r
   }\r
@@ -1159,19 +1173,20 @@ GetGcdMemoryMap (
   if (mGcdMemSpace == NULL) {\r
     mGcdMemNumberOfDesc = 0;\r
     gBS->FreePool (MemSpaceMap);\r
-    return ;\r
+    return;\r
   }\r
 \r
   mGcdMemNumberOfDesc = 0;\r
   for (Index = 0; Index < NumberOfDescriptors; Index++) {\r
-    if (MemSpaceMap[Index].GcdMemoryType == EfiGcdMemoryTypeReserved &&\r
-        (MemSpaceMap[Index].Capabilities & (EFI_MEMORY_PRESENT | EFI_MEMORY_INITIALIZED | EFI_MEMORY_TESTED)) ==\r
-          (EFI_MEMORY_PRESENT | EFI_MEMORY_INITIALIZED)\r
-          ) {\r
+    if ((MemSpaceMap[Index].GcdMemoryType == EfiGcdMemoryTypeReserved) &&\r
+        ((MemSpaceMap[Index].Capabilities & (EFI_MEMORY_PRESENT | EFI_MEMORY_INITIALIZED | EFI_MEMORY_TESTED)) ==\r
+         (EFI_MEMORY_PRESENT | EFI_MEMORY_INITIALIZED))\r
+        )\r
+    {\r
       CopyMem (\r
         &mGcdMemSpace[mGcdMemNumberOfDesc],\r
         &MemSpaceMap[Index],\r
-        sizeof(EFI_GCD_MEMORY_SPACE_DESCRIPTOR)\r
+        sizeof (EFI_GCD_MEMORY_SPACE_DESCRIPTOR)\r
         );\r
       mGcdMemNumberOfDesc++;\r
     }\r
@@ -1194,7 +1209,7 @@ GetUefiMemoryAttributesTable (
 \r
   Status = EfiGetSystemConfigurationTable (&gEfiMemoryAttributesTableGuid, (VOID **)&MemoryAttributesTable);\r
   if (!EFI_ERROR (Status) && (MemoryAttributesTable != NULL)) {\r
-    MemoryAttributesTableSize = sizeof(EFI_MEMORY_ATTRIBUTES_TABLE) + MemoryAttributesTable->DescriptorSize * MemoryAttributesTable->NumberOfEntries;\r
+    MemoryAttributesTableSize  = sizeof (EFI_MEMORY_ATTRIBUTES_TABLE) + MemoryAttributesTable->DescriptorSize * MemoryAttributesTable->NumberOfEntries;\r
     mUefiMemoryAttributesTable = AllocateCopyPool (MemoryAttributesTableSize, MemoryAttributesTable);\r
     ASSERT (mUefiMemoryAttributesTable != NULL);\r
   }\r
@@ -1208,30 +1223,30 @@ GetUefiMemoryMap (
   VOID\r
   )\r
 {\r
-  EFI_STATUS            Status;\r
-  UINTN                 MapKey;\r
-  UINT32                DescriptorVersion;\r
-  EFI_MEMORY_DESCRIPTOR *MemoryMap;\r
-  UINTN                 UefiMemoryMapSize;\r
+  EFI_STATUS             Status;\r
+  UINTN                  MapKey;\r
+  UINT32                 DescriptorVersion;\r
+  EFI_MEMORY_DESCRIPTOR  *MemoryMap;\r
+  UINTN                  UefiMemoryMapSize;\r
 \r
   DEBUG ((DEBUG_INFO, "GetUefiMemoryMap\n"));\r
 \r
   UefiMemoryMapSize = 0;\r
-  MemoryMap = NULL;\r
-  Status = gBS->GetMemoryMap (\r
-                  &UefiMemoryMapSize,\r
-                  MemoryMap,\r
-                  &MapKey,\r
-                  &mUefiDescriptorSize,\r
-                  &DescriptorVersion\r
-                  );\r
+  MemoryMap         = NULL;\r
+  Status            = gBS->GetMemoryMap (\r
+                             &UefiMemoryMapSize,\r
+                             MemoryMap,\r
+                             &MapKey,\r
+                             &mUefiDescriptorSize,\r
+                             &DescriptorVersion\r
+                             );\r
   ASSERT (Status == EFI_BUFFER_TOO_SMALL);\r
 \r
   do {\r
     Status = gBS->AllocatePool (EfiBootServicesData, UefiMemoryMapSize, (VOID **)&MemoryMap);\r
     ASSERT (MemoryMap != NULL);\r
     if (MemoryMap == NULL) {\r
-      return ;\r
+      return;\r
     }\r
 \r
     Status = gBS->GetMemoryMap (\r
@@ -1248,14 +1263,14 @@ GetUefiMemoryMap (
   } while (Status == EFI_BUFFER_TOO_SMALL);\r
 \r
   if (MemoryMap == NULL) {\r
-    return ;\r
+    return;\r
   }\r
 \r
   SortMemoryMap (MemoryMap, UefiMemoryMapSize, mUefiDescriptorSize);\r
   MergeMemoryMapForNotPresentEntry (MemoryMap, &UefiMemoryMapSize, mUefiDescriptorSize);\r
 \r
   mUefiMemoryMapSize = UefiMemoryMapSize;\r
-  mUefiMemoryMap = AllocateCopyPool (UefiMemoryMapSize, MemoryMap);\r
+  mUefiMemoryMap     = AllocateCopyPool (UefiMemoryMapSize, MemoryMap);\r
   ASSERT (mUefiMemoryMap != NULL);\r
 \r
   gBS->FreePool (MemoryMap);\r
@@ -1283,35 +1298,37 @@ SetUefiMemMapAttributes (
   VOID\r
   )\r
 {\r
-  EFI_STATUS            Status;\r
-  EFI_MEMORY_DESCRIPTOR *MemoryMap;\r
-  UINTN                 MemoryMapEntryCount;\r
-  UINTN                 Index;\r
-  EFI_MEMORY_DESCRIPTOR *Entry;\r
+  EFI_STATUS             Status;\r
+  EFI_MEMORY_DESCRIPTOR  *MemoryMap;\r
+  UINTN                  MemoryMapEntryCount;\r
+  UINTN                  Index;\r
+  EFI_MEMORY_DESCRIPTOR  *Entry;\r
 \r
   DEBUG ((DEBUG_INFO, "SetUefiMemMapAttributes\n"));\r
 \r
   if (mUefiMemoryMap != NULL) {\r
     MemoryMapEntryCount = mUefiMemoryMapSize/mUefiDescriptorSize;\r
-    MemoryMap = mUefiMemoryMap;\r
+    MemoryMap           = mUefiMemoryMap;\r
     for (Index = 0; Index < MemoryMapEntryCount; Index++) {\r
-      if (IsUefiPageNotPresent(MemoryMap)) {\r
+      if (IsUefiPageNotPresent (MemoryMap)) {\r
         Status = SmmSetMemoryAttributes (\r
                    MemoryMap->PhysicalStart,\r
-                   EFI_PAGES_TO_SIZE((UINTN)MemoryMap->NumberOfPages),\r
+                   EFI_PAGES_TO_SIZE ((UINTN)MemoryMap->NumberOfPages),\r
                    EFI_MEMORY_RP\r
                    );\r
         DEBUG ((\r
           DEBUG_INFO,\r
           "UefiMemory protection: 0x%lx - 0x%lx %r\n",\r
           MemoryMap->PhysicalStart,\r
-          MemoryMap->PhysicalStart + (UINT64)EFI_PAGES_TO_SIZE((UINTN)MemoryMap->NumberOfPages),\r
+          MemoryMap->PhysicalStart + (UINT64)EFI_PAGES_TO_SIZE ((UINTN)MemoryMap->NumberOfPages),\r
           Status\r
           ));\r
       }\r
-      MemoryMap = NEXT_MEMORY_DESCRIPTOR(MemoryMap, mUefiDescriptorSize);\r
+\r
+      MemoryMap = NEXT_MEMORY_DESCRIPTOR (MemoryMap, mUefiDescriptorSize);\r
     }\r
   }\r
+\r
   //\r
   // Do not free mUefiMemoryMap, it will be checked in IsSmmCommBufferForbiddenAddress().\r
   //\r
@@ -1335,6 +1352,7 @@ SetUefiMemMapAttributes (
         ));\r
     }\r
   }\r
+\r
   //\r
   // Do not free mGcdMemSpace, it will be checked in IsSmmCommBufferForbiddenAddress().\r
   //\r
@@ -1345,25 +1363,27 @@ SetUefiMemMapAttributes (
   if (mUefiMemoryAttributesTable != NULL) {\r
     Entry = (EFI_MEMORY_DESCRIPTOR *)(mUefiMemoryAttributesTable + 1);\r
     for (Index = 0; Index < mUefiMemoryAttributesTable->NumberOfEntries; Index++) {\r
-      if (Entry->Type == EfiRuntimeServicesCode || Entry->Type == EfiRuntimeServicesData) {\r
+      if ((Entry->Type == EfiRuntimeServicesCode) || (Entry->Type == EfiRuntimeServicesData)) {\r
         if ((Entry->Attribute & EFI_MEMORY_RO) != 0) {\r
           Status = SmmSetMemoryAttributes (\r
                      Entry->PhysicalStart,\r
-                     EFI_PAGES_TO_SIZE((UINTN)Entry->NumberOfPages),\r
+                     EFI_PAGES_TO_SIZE ((UINTN)Entry->NumberOfPages),\r
                      EFI_MEMORY_RP\r
                      );\r
           DEBUG ((\r
             DEBUG_INFO,\r
             "UefiMemoryAttribute protection: 0x%lx - 0x%lx %r\n",\r
             Entry->PhysicalStart,\r
-            Entry->PhysicalStart + (UINT64)EFI_PAGES_TO_SIZE((UINTN)Entry->NumberOfPages),\r
+            Entry->PhysicalStart + (UINT64)EFI_PAGES_TO_SIZE ((UINTN)Entry->NumberOfPages),\r
             Status\r
             ));\r
         }\r
       }\r
+\r
       Entry = NEXT_MEMORY_DESCRIPTOR (Entry, mUefiMemoryAttributesTable->DescriptorSize);\r
     }\r
   }\r
+\r
   //\r
   // Do not free mUefiMemoryAttributesTable, it will be checked in IsSmmCommBufferForbiddenAddress().\r
   //\r
@@ -1382,29 +1402,32 @@ IsSmmCommBufferForbiddenAddress (
   IN UINT64  Address\r
   )\r
 {\r
-  EFI_MEMORY_DESCRIPTOR *MemoryMap;\r
-  UINTN                 MemoryMapEntryCount;\r
-  UINTN                 Index;\r
-  EFI_MEMORY_DESCRIPTOR *Entry;\r
+  EFI_MEMORY_DESCRIPTOR  *MemoryMap;\r
+  UINTN                  MemoryMapEntryCount;\r
+  UINTN                  Index;\r
+  EFI_MEMORY_DESCRIPTOR  *Entry;\r
 \r
   if (mUefiMemoryMap != NULL) {\r
-    MemoryMap = mUefiMemoryMap;\r
+    MemoryMap           = mUefiMemoryMap;\r
     MemoryMapEntryCount = mUefiMemoryMapSize/mUefiDescriptorSize;\r
     for (Index = 0; Index < MemoryMapEntryCount; Index++) {\r
       if (IsUefiPageNotPresent (MemoryMap)) {\r
         if ((Address >= MemoryMap->PhysicalStart) &&\r
-            (Address < MemoryMap->PhysicalStart + EFI_PAGES_TO_SIZE((UINTN)MemoryMap->NumberOfPages)) ) {\r
+            (Address < MemoryMap->PhysicalStart + EFI_PAGES_TO_SIZE ((UINTN)MemoryMap->NumberOfPages)))\r
+        {\r
           return TRUE;\r
         }\r
       }\r
-      MemoryMap = NEXT_MEMORY_DESCRIPTOR(MemoryMap, mUefiDescriptorSize);\r
+\r
+      MemoryMap = NEXT_MEMORY_DESCRIPTOR (MemoryMap, mUefiDescriptorSize);\r
     }\r
   }\r
 \r
   if (mGcdMemSpace != NULL) {\r
     for (Index = 0; Index < mGcdMemNumberOfDesc; Index++) {\r
       if ((Address >= mGcdMemSpace[Index].BaseAddress) &&\r
-          (Address < mGcdMemSpace[Index].BaseAddress + mGcdMemSpace[Index].Length) ) {\r
+          (Address < mGcdMemSpace[Index].BaseAddress + mGcdMemSpace[Index].Length))\r
+      {\r
         return TRUE;\r
       }\r
     }\r
@@ -1413,17 +1436,20 @@ IsSmmCommBufferForbiddenAddress (
   if (mUefiMemoryAttributesTable != NULL) {\r
     Entry = (EFI_MEMORY_DESCRIPTOR *)(mUefiMemoryAttributesTable + 1);\r
     for (Index = 0; Index < mUefiMemoryAttributesTable->NumberOfEntries; Index++) {\r
-      if (Entry->Type == EfiRuntimeServicesCode || Entry->Type == EfiRuntimeServicesData) {\r
+      if ((Entry->Type == EfiRuntimeServicesCode) || (Entry->Type == EfiRuntimeServicesData)) {\r
         if ((Entry->Attribute & EFI_MEMORY_RO) != 0) {\r
           if ((Address >= Entry->PhysicalStart) &&\r
-              (Address < Entry->PhysicalStart + LShiftU64 (Entry->NumberOfPages, EFI_PAGE_SHIFT))) {\r
+              (Address < Entry->PhysicalStart + LShiftU64 (Entry->NumberOfPages, EFI_PAGE_SHIFT)))\r
+          {\r
             return TRUE;\r
           }\r
+\r
           Entry = NEXT_MEMORY_DESCRIPTOR (Entry, mUefiMemoryAttributesTable->DescriptorSize);\r
         }\r
       }\r
     }\r
   }\r
+\r
   return FALSE;\r
 }\r
 \r
@@ -1453,10 +1479,10 @@ IsSmmCommBufferForbiddenAddress (
 EFI_STATUS\r
 EFIAPI\r
 EdkiiSmmSetMemoryAttributes (\r
-  IN  EDKII_SMM_MEMORY_ATTRIBUTE_PROTOCOL   *This,\r
-  IN  EFI_PHYSICAL_ADDRESS                  BaseAddress,\r
-  IN  UINT64                                Length,\r
-  IN  UINT64                                Attributes\r
+  IN  EDKII_SMM_MEMORY_ATTRIBUTE_PROTOCOL  *This,\r
+  IN  EFI_PHYSICAL_ADDRESS                 BaseAddress,\r
+  IN  UINT64                               Length,\r
+  IN  UINT64                               Attributes\r
   )\r
 {\r
   return SmmSetMemoryAttributes (BaseAddress, Length, Attributes);\r
@@ -1488,10 +1514,10 @@ EdkiiSmmSetMemoryAttributes (
 EFI_STATUS\r
 EFIAPI\r
 EdkiiSmmClearMemoryAttributes (\r
-  IN  EDKII_SMM_MEMORY_ATTRIBUTE_PROTOCOL   *This,\r
-  IN  EFI_PHYSICAL_ADDRESS                  BaseAddress,\r
-  IN  UINT64                                Length,\r
-  IN  UINT64                                Attributes\r
+  IN  EDKII_SMM_MEMORY_ATTRIBUTE_PROTOCOL  *This,\r
+  IN  EFI_PHYSICAL_ADDRESS                 BaseAddress,\r
+  IN  UINT64                               Length,\r
+  IN  UINT64                               Attributes\r
   )\r
 {\r
   return SmmClearMemoryAttributes (BaseAddress, Length, Attributes);\r
@@ -1521,10 +1547,10 @@ EdkiiSmmClearMemoryAttributes (
 EFI_STATUS\r
 EFIAPI\r
 EdkiiSmmGetMemoryAttributes (\r
-  IN  EDKII_SMM_MEMORY_ATTRIBUTE_PROTOCOL   *This,\r
-  IN  EFI_PHYSICAL_ADDRESS                  BaseAddress,\r
-  IN  UINT64                                Length,\r
-  OUT UINT64                                *Attributes\r
+  IN  EDKII_SMM_MEMORY_ATTRIBUTE_PROTOCOL  *This,\r
+  IN  EFI_PHYSICAL_ADDRESS                 BaseAddress,\r
+  IN  UINT64                               Length,\r
+  OUT UINT64                               *Attributes\r
   )\r
 {\r
   EFI_PHYSICAL_ADDRESS  Address;\r
@@ -1533,17 +1559,16 @@ EdkiiSmmGetMemoryAttributes (
   PAGE_ATTRIBUTE        PageAttr;\r
   INT64                 Size;\r
 \r
-  if (Length < SIZE_4KB || Attributes == NULL) {\r
+  if ((Length < SIZE_4KB) || (Attributes == NULL)) {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
-  Size = (INT64)Length;\r
+  Size    = (INT64)Length;\r
   MemAttr = (UINT64)-1;\r
 \r
   do {\r
-\r
     PageEntry = GetPageTableEntry (BaseAddress, &PageAttr);\r
-    if (PageEntry == NULL || PageAttr == PageNone) {\r
+    if ((PageEntry == NULL) || (PageAttr == PageNone)) {\r
       return EFI_UNSUPPORTED;\r
     }\r
 \r
@@ -1552,37 +1577,35 @@ EdkiiSmmGetMemoryAttributes (
     // share the same attribute. Return EFI_NO_MAPPING if not.\r
     //\r
     *Attributes = GetAttributesFromPageEntry (PageEntry);\r
-    if (MemAttr != (UINT64)-1 && *Attributes != MemAttr) {\r
+    if ((MemAttr != (UINT64)-1) && (*Attributes != MemAttr)) {\r
       return EFI_NO_MAPPING;\r
     }\r
 \r
     switch (PageAttr) {\r
-    case Page4K:\r
-      Address     = *PageEntry & ~mAddressEncMask & PAGING_4K_ADDRESS_MASK_64;\r
-      Size        -= (SIZE_4KB - (BaseAddress - Address));\r
-      BaseAddress += (SIZE_4KB - (BaseAddress - Address));\r
-      break;\r
-\r
-    case Page2M:\r
-      Address     = *PageEntry & ~mAddressEncMask & PAGING_2M_ADDRESS_MASK_64;\r
-      Size        -= SIZE_2MB - (BaseAddress - Address);\r
-      BaseAddress += SIZE_2MB - (BaseAddress - Address);\r
-      break;\r
-\r
-    case Page1G:\r
-      Address     = *PageEntry & ~mAddressEncMask & PAGING_1G_ADDRESS_MASK_64;\r
-      Size        -= SIZE_1GB - (BaseAddress - Address);\r
-      BaseAddress += SIZE_1GB - (BaseAddress - Address);\r
-      break;\r
+      case Page4K:\r
+        Address      = *PageEntry & ~mAddressEncMask & PAGING_4K_ADDRESS_MASK_64;\r
+        Size        -= (SIZE_4KB - (BaseAddress - Address));\r
+        BaseAddress += (SIZE_4KB - (BaseAddress - Address));\r
+        break;\r
 \r
-    default:\r
-      return EFI_UNSUPPORTED;\r
+      case Page2M:\r
+        Address      = *PageEntry & ~mAddressEncMask & PAGING_2M_ADDRESS_MASK_64;\r
+        Size        -= SIZE_2MB - (BaseAddress - Address);\r
+        BaseAddress += SIZE_2MB - (BaseAddress - Address);\r
+        break;\r
+\r
+      case Page1G:\r
+        Address      = *PageEntry & ~mAddressEncMask & PAGING_1G_ADDRESS_MASK_64;\r
+        Size        -= SIZE_1GB - (BaseAddress - Address);\r
+        BaseAddress += SIZE_1GB - (BaseAddress - Address);\r
+        break;\r
+\r
+      default:\r
+        return EFI_UNSUPPORTED;\r
     }\r
 \r
     MemAttr = *Attributes;\r
-\r
   } while (Size > 0);\r
 \r
   return EFI_SUCCESS;\r
 }\r
-\r