acrn-hypervisor/hypervisor/include/arch/x86/asm
Zide Chen 2bd269c11c hv: nested: support for VMCLEAR emulation
This patch is to emulate VMCLEAR instruction.

L1 hypervisor issues VMCLEAR on a VMCS12 whose state could be any of
these: active and current, active but not current, not yet VMPTRLDed.

To emulate the VMCLEAR instruction, ACRN sets the VMCS12 launch state to
"clear", and if L0 already cached this VMCS12, need to sync it back to
guest memory:

- sync shadow fields from shadow VMCS VMCS to cache VMCS12
- copy cache VMCS12 to L1 guest memory

Tracked-On: #5923
Signed-off-by: Sainath Grandhi <sainath.grandhi@intel.com>
Signed-off-by: Zide Chen <zide.chen@intel.com>
2021-05-24 10:34:01 +08:00
..
boot hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
guest hv: nested: support for VMCLEAR emulation 2021-05-24 10:34:01 +08:00
lib hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
apicreg.h hv: vlapic: wrap a function to calculate destination vcpu mask by shorthand 2021-05-24 10:27:32 +08:00
board.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
cpu_caps.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
cpu.h hv: nested: check prerequisites to enter VMX operation 2021-05-24 10:34:01 +08:00
cpufeatures.h hv: Support WAITPKG instructions in guest VM 2021-05-13 14:19:50 +08:00
cpuid.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
default_acpi_info.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
e820.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
gdt.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
host_pm.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
idt.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
init.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
io.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
ioapic.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
irq.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
lapic.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
mmu.h hv: cache: wrap common APIs 2021-05-14 09:18:00 +08:00
msr.h hv: Support WAITPKG instructions in guest VM 2021-05-13 14:19:50 +08:00
notify.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
page.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
pci_dev.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
per_cpu.h hv/mod_timer: make timer into an arch-independent module 2021-05-18 16:43:28 +08:00
pgtable.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
platform_caps.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
rdt.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
rtcm.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
rtct.h hv: update RTCT parser to support RTCT version 2 2021-05-17 17:19:11 +08:00
security.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
seed.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
sgx.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
trampoline.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
tsc.h hv/mod_timer: split tsc handling code from timer. 2021-05-18 16:43:28 +08:00
vm_config.h hv: PTM: Create virtual root port 2021-05-19 13:54:24 +08:00
vmx.h hv: nested: define VMCS shadow fields 2021-05-24 10:34:01 +08:00
vtd.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00
zeropage.h hv: mod: do not use explicit arch name when including headers 2021-05-08 11:15:46 +08:00