Fixed one bug: gSmmCorePrivate->InSmm is not set to FALSE correctly before exiting

signed-off-by: Jeff Fan <jeff.fan@intel.com>
reviewed-by: Michael.D.Kinney <Michael.D.Kinney@intel.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13912 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
vanjeff 2012-11-01 23:51:22 +00:00
parent a326830d70
commit a25cb9f604
1 changed files with 4 additions and 2 deletions

View File

@ -245,6 +245,7 @@ SmmEntryPoint (
{
EFI_STATUS Status;
EFI_SMM_COMMUNICATE_HEADER *CommunicateHeader;
BOOLEAN InLegacyBoot;
PERF_START (NULL, "SMM", NULL, 0) ;
@ -261,7 +262,8 @@ SmmEntryPoint (
//
// If a legacy boot has occured, then make sure gSmmCorePrivate is not accessed
//
if (!mInLegacyBoot) {
InLegacyBoot = mInLegacyBoot;
if (!InLegacyBoot) {
//
// Mark the InSmm flag as TRUE, it will be used by SmmBase2 protocol
//
@ -307,7 +309,7 @@ SmmEntryPoint (
//
// If a legacy boot has occured, then make sure gSmmCorePrivate is not accessed
//
if (!mInLegacyBoot) {
if (!InLegacyBoot) {
//
// Clear the InSmm flag as we are going to leave SMM
//