Cc: Jiewen Yao <jiewen....@intel.com>
Cc: Eric Dong <eric.d...@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff....@intel.com>
---
 UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiEntry.asm    |  6 +++---
 .../Library/SmmCpuFeaturesLib/Ia32/SmiException.asm       | 15 ++++++++++-----
 2 files changed, 13 insertions(+), 8 deletions(-)

diff --git a/UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiEntry.asm 
b/UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiEntry.asm
index 94888d5..91dc1eb 100644
--- a/UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiEntry.asm
+++ b/UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiEntry.asm
@@ -1,5 +1,5 @@
 
;------------------------------------------------------------------------------ 
;
-; Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.<BR>
+; Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.<BR>
 ; This program and the accompanying materials
 ; are licensed and made available under the terms and conditions of the BSD 
License
 ; which accompanies this distribution.  The full text of the license may be 
found at
@@ -201,7 +201,7 @@ CommonHandler:
     call    eax
     add     esp, 4
 
-    mov     eax, gStmXdSupported
+    mov     eax, offset gStmXdSupported
     mov     al, [eax]
     cmp     al, 0
     jz      @f
@@ -221,7 +221,7 @@ _StmSmiHandler:
 ; Check XD disable bit
 ;
     xor     esi, esi
-    mov     eax, gStmXdSupported
+    mov     eax, offset gStmXdSupported
     mov     al, [eax]
     cmp     al, 0
     jz      @StmXdDone
diff --git a/UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiException.asm 
b/UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiException.asm
index 7c04ad9..d0ae147 100644
--- a/UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiException.asm
+++ b/UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiException.asm
@@ -1,5 +1,5 @@
 
;------------------------------------------------------------------------------ 
;
-; Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.<BR>
+; Copyright (c) 2009 - 2017, Intel Corporation. All rights reserved.<BR>
 ; This program and the accompanying materials
 ; are licensed and made available under the terms and conditions of the BSD 
License
 ; which accompanies this distribution.  The full text of the license may be 
found at
@@ -26,11 +26,16 @@ EXTERNDEF   gcStmPsd:BYTE
 EXTERNDEF   SmmStmExceptionHandler:PROC
 EXTERNDEF   SmmStmSetup:PROC
 EXTERNDEF   SmmStmTeardown:PROC
+EXTERNDEF   gStmXdSupported:BYTE
 
 CODE_SEL    = 08h
 DATA_SEL    = 20h
 TSS_SEL     = 40h
 
+MSR_IA32_MISC_ENABLE  EQU     1A0h
+MSR_EFER              EQU     0c0000080h
+MSR_EFER_XD           EQU     0800h
+
     .data
 
 gcStmPsd     LABEL   BYTE
@@ -88,7 +93,7 @@ _OnStmSetup PROC
 ; Check XD disable bit
 ;
     xor     esi, esi
-    mov     eax, gStmXdSupported
+    mov     eax, offset gStmXdSupported
     mov     al, [eax]
     cmp     al, 0
     jz      @StmXdDone1
@@ -109,7 +114,7 @@ _OnStmSetup PROC
 
   call SmmStmSetup
 
-    mov     eax, gStmXdSupported
+    mov     eax, offset gStmXdSupported
     mov     al, [eax]
     cmp     al, 0
     jz      @f
@@ -130,7 +135,7 @@ _OnStmTeardown PROC
 ; Check XD disable bit
 ;
     xor     esi, esi
-    mov     eax, gStmXdSupported
+    mov     eax, offset gStmXdSupported
     mov     al, [eax]
     cmp     al, 0
     jz      @StmXdDone2
@@ -151,7 +156,7 @@ _OnStmTeardown PROC
 
   call SmmStmTeardown
 
-    mov     eax, gStmXdSupported
+    mov     eax, offset gStmXdSupported
     mov     al, [eax]
     cmp     al, 0
     jz      @f
-- 
2.9.3.windows.2

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to