X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=UefiCpuPkg%2FLibrary%2FMpInitLib%2FX64%2FMpFuncs.nasm;h=31a25c2737fe60dc9042d78a265598c641dd711a;hp=75959888849e4666926d9ff7063ffe3de6cc13d6;hb=7367cc6c24d01b400d2370ffd58ae02854a56b32;hpb=f32bfe6d061420a15bac6083063d227c567e6388
diff --git a/UefiCpuPkg/Library/MpInitLib/X64/MpFuncs.nasm b/UefiCpuPkg/Library/MpInitLib/X64/MpFuncs.nasm
index 7595988884..31a25c2737 100644
--- a/UefiCpuPkg/Library/MpInitLib/X64/MpFuncs.nasm
+++ b/UefiCpuPkg/Library/MpInitLib/X64/MpFuncs.nasm
@@ -1,5 +1,5 @@
;------------------------------------------------------------------------------ ;
-; Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.
+; Copyright (c) 2015 - 2018, 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
@@ -216,7 +216,7 @@ GetNextProcNumber:
jz ProgramStack
add edi, 20
inc ebx
- jmp GetNextProcNumber
+ jmp GetNextProcNumber
ProgramStack:
mov rsp, qword [edi + 12]
@@ -253,6 +253,7 @@ RendezvousFunnelProcEnd:
global ASM_PFX(AsmRelocateApLoop)
ASM_PFX(AsmRelocateApLoop):
AsmRelocateApLoopStart:
+ cli ; Disable interrupt before switching to 32-bit mode
mov rax, [rsp + 40] ; CountTofinish
lock dec dword [rax] ; (*CountTofinish)--
mov rsp, r9
@@ -288,6 +289,7 @@ PmEntry:
jnz HltLoop
mov ebx, edx ; Save C-State to ebx
MwaitLoop:
+ cli
mov eax, esp ; Set Monitor Address
xor ecx, ecx ; ecx = 0
xor edx, edx ; edx = 0