diff options
author | klu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-02-23 07:32:20 +0000 |
---|---|---|
committer | klu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524> | 2010-02-23 07:32:20 +0000 |
commit | 28b5f7c06238b25732bf6f0c72c3d42b94abee66 (patch) | |
tree | 6c86c7db041010025e4b9f92efccb87f6ccbec79 /MdePkg/Library/BaseLib/X64 | |
parent | f18f2882e95fe2158bd19cf6a9a6ca569cea93de (diff) | |
download | edk2-platforms-28b5f7c06238b25732bf6f0c72c3d42b94abee66.tar.xz |
Disable interrupt when changing IDTR register.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10046 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdePkg/Library/BaseLib/X64')
-rw-r--r-- | MdePkg/Library/BaseLib/X64/WriteIdtr.S | 5 | ||||
-rw-r--r-- | MdePkg/Library/BaseLib/X64/WriteIdtr.asm | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/MdePkg/Library/BaseLib/X64/WriteIdtr.S b/MdePkg/Library/BaseLib/X64/WriteIdtr.S index 544ef7929c..33365502d5 100644 --- a/MdePkg/Library/BaseLib/X64/WriteIdtr.S +++ b/MdePkg/Library/BaseLib/X64/WriteIdtr.S @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------
#
-# Copyright (c) 2006 - 2009, Intel Corporation
+# Copyright (c) 2006 - 2010, Intel Corporation
# All rights reserved. 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
@@ -31,5 +31,8 @@ #------------------------------------------------------------------------------
ASM_GLOBAL ASM_PFX(InternalX86WriteIdtr)
ASM_PFX(InternalX86WriteIdtr):
+ pushfq
+ cli
lidt (%rcx)
+ popfq
ret
diff --git a/MdePkg/Library/BaseLib/X64/WriteIdtr.asm b/MdePkg/Library/BaseLib/X64/WriteIdtr.asm index 2f6c081ab6..a658fe3728 100644 --- a/MdePkg/Library/BaseLib/X64/WriteIdtr.asm +++ b/MdePkg/Library/BaseLib/X64/WriteIdtr.asm @@ -1,6 +1,6 @@ ;------------------------------------------------------------------------------
;
-; Copyright (c) 2006, Intel Corporation
+; Copyright (c) 2006 - 2010, Intel Corporation
; All rights reserved. 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
@@ -31,7 +31,10 @@ ; );
;------------------------------------------------------------------------------
InternalX86WriteIdtr PROC
+ pushfq
+ cli
lidt fword ptr [rcx]
+ popfq
ret
InternalX86WriteIdtr ENDP
|