Status = CoreConvertPages (Start, NumberOfPages, MemoryType);\r
}\r
\r
+ if (EFI_ERROR (Status)) {\r
+ //\r
+ // If requested memory region is unavailable it may be untested memory\r
+ // Attempt to promote memory resources, then re-attempt the allocation\r
+ //\r
+ if (PromoteMemoryResource ()) {\r
+ if (NeedGuard) {\r
+ Status = CoreConvertPagesWithGuard (Start, NumberOfPages, MemoryType);\r
+ } else {\r
+ Status = CoreConvertPages (Start, NumberOfPages, MemoryType);\r
+ }\r
+ }\r
+ }\r
+\r
Done:\r
CoreReleaseMemoryLock ();\r
\r