audk/MdeModulePkg/Core
Laszlo Ersek b07ea4c198 MdeModulePkg: SmmIplEntry(): don't suppress SMM core startup failure
When the ExecuteSmmCoreFromSmram() function fails, SmmIplEntry()
restores the SMRAM range to EFI_MEMORY_UC. However, it saves the
return value of gDS->SetMemorySpaceAttributes() in the same Status
variable that gDS->contains the return value of ExecuteSmmCoreFromSmram().

Therefore, if gDS->SetMemorySpaceAttributes() succeeds, the failure
of ExecuteSmmCoreFromSmram() is masked, and Bad Things Happen (TM).

Introduce a temporary variable just for the return value of
gDS->SetMemorySpaceAttributes().

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17417 6f19259b-4bc3-4df7-8a09-765794883524
2015-05-12 01:48:34 +00:00
..
Dxe MdeModulePkg DxeCore: Add memory more reliable support. 2015-05-11 05:16:48 +00:00
DxeIplPeim MdeModulePkg: Convert non DOS format files to DOS format and remove unused module UNI files. 2014-09-03 08:39:12 +00:00
Pei MdeModulePkg: Update implementation of PeiAllocatePages() to allow EfiReservedMemoryType. 2015-05-11 03:12:21 +00:00
PiSmmCore MdeModulePkg: SmmIplEntry(): don't suppress SMM core startup failure 2015-05-12 01:48:34 +00:00
RuntimeDxe MdeModulePkg: Roll back report status code change in RuntimeDriverSetVirtualAddressMap. 2015-04-10 01:37:41 +00:00