mirror of https://github.com/acidanthera/audk.git
UefiCpuPkg/MpInitLib: Set the SW exit fields when performing VMGEXIT
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3008
All fields that are set in the GHCB should have their associated bit in
the GHCB ValidBitmap field set. Add support to set the bits for the
software exit information fields when performing a VMGEXIT (SwExitCode,
SwExitInfo1, SwExitInfo2).
Fixes: 20da7ca42a
Cc: Eric Dong <eric.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Rahul Kumar <rahul1.kumar@intel.com>
Acked-by: Ray Ni <ray.ni@intel.com>
Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Message-Id: <6e11dd7e161bddeacc3fb4817467cef24510c31c.1604685192.git.thomas.lendacky@amd.com>
This commit is contained in:
parent
12a0c11e81
commit
fb2a1a36a2
|
@ -533,6 +533,12 @@ BITS 64
|
||||||
|
|
||||||
mov rax, 0x80000004 ; VMGEXIT AP_RESET_HOLD
|
mov rax, 0x80000004 ; VMGEXIT AP_RESET_HOLD
|
||||||
mov [rdx + 0x390], rax
|
mov [rdx + 0x390], rax
|
||||||
|
mov rax, 114 ; Set SwExitCode valid bit
|
||||||
|
bts [rdx + 0x3f0], rax
|
||||||
|
inc rax ; Set SwExitInfo1 valid bit
|
||||||
|
bts [rdx + 0x3f0], rax
|
||||||
|
inc rax ; Set SwExitInfo2 valid bit
|
||||||
|
bts [rdx + 0x3f0], rax
|
||||||
|
|
||||||
pop rdx
|
pop rdx
|
||||||
pop rcx
|
pop rcx
|
||||||
|
|
Loading…
Reference in New Issue