]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Update PI SMM Core to ignore memory ranges from SMRAM Descriptors that are already...
authormdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524>
Mon, 1 Mar 2010 05:32:59 +0000 (05:32 +0000)
committermdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524>
Mon, 1 Mar 2010 05:32:59 +0000 (05:32 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10132 6f19259b-4bc3-4df7-8a09-765794883524

MdeModulePkg/Core/PiSmmCore/Page.c

index ec4dd4fcb8ef409c984ae26e3f502ea007326454..781707e2443bd55983ee3429421e7f5305797d24 100644 (file)
@@ -312,6 +312,16 @@ SmmAddMemoryRegion (
 {\r
   UINTN  AlignedMemBase;\r
 \r
+  //\r
+  // Do not add memory regions that is already allocated, needs testing, or needs ECC initialization\r
+  //\r
+  if ((Attributes & (EFI_ALLOCATED | EFI_NEEDS_TESTING | EFI_NEEDS_ECC_INITIALIZATION)) != 0) {\r
+    return;\r
+  }\r
+  \r
+  //\r
+  // Align range on an EFI_PAGE_SIZE boundary\r
+  //  \r
   AlignedMemBase = (UINTN)(MemBase + EFI_PAGE_MASK) & ~EFI_PAGE_MASK;\r
   MemLength -= AlignedMemBase - MemBase;\r
   SmmFreePages (AlignedMemBase, TRUNCATE_TO_PAGES ((UINTN)MemLength));\r