acrn-hypervisor/hypervisor/arch/x86
Yuan Liu f8934df355 HV: implement wbinvd instruction emulation
wbinvd is used to write back all modified cache lines in the processor's
internal cache to main memory and invalidates(flushes) the internal caches.

Using clflushopt instructions to emulate wbinvd to flush each
guest vm memory, if CLFLUSHOPT is not supported, boot will fail.

Signed-off-by: Jack Ren <jack.ren@intel.com>
Signed-off-by: Yuan Liu <yuan1.liu@intel.com>
Reviewed-by: Li, Fei1 <fei1.li@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
2019-06-20 09:32:55 +08:00
..
boot hv:remove some unnecessary includes 2019-05-07 09:10:13 +08:00
configs hv: move 3 files to lib & arch folder 2019-06-14 14:22:51 +08:00
guest HV: implement wbinvd instruction emulation 2019-06-20 09:32:55 +08:00
lib hv: move 3 files to lib & arch folder 2019-06-14 14:22:51 +08:00
seed hv: delay enabling SMEP/SMAP until the end of PCPU initialization 2019-06-10 11:35:15 +08:00
cat.c hv:remove some unnecessary includes 2019-05-07 09:10:13 +08:00
cpu_caps.c HV: Add CLFLUSHOPT instruction. 2019-06-20 09:32:55 +08:00
cpu_state_tbl.c HV: enforce Cx of apl nuc with SPACE_SYSTEM_IO 2019-05-24 11:36:54 +08:00
cpu.c hv: delay enabling SMEP/SMAP until the end of PCPU initialization 2019-06-10 11:35:15 +08:00
e820.c hv: cleanup some hva/hpa conversion code 2019-03-15 09:03:14 +08:00
gdt.c hv:cleanup header files for arch folder 2019-02-22 13:14:36 +08:00
idt.S move idt.S and idt.h out of boot component 2018-12-12 09:07:43 +08:00
init.c hv: delay enabling SMEP/SMAP until the end of PCPU initialization 2019-06-10 11:35:15 +08:00
ioapic.c hv:cleanup header files for arch folder 2019-02-22 13:14:36 +08:00
irq.c rename function & definition from firmware to guest boot 2019-05-09 16:33:44 +08:00
Kconfig HV: add hybrid scenario 2019-06-06 15:22:10 +08:00
lapic.c HV: Add prefix 'p' before 'cpu' to physical cpu related functions 2019-04-24 10:50:28 +08:00
mmu.c HV: Add flush_address_space API. 2019-06-20 09:32:55 +08:00
notify.c HV: Add prefix 'p' before 'cpu' to physical cpu related functions 2019-04-24 10:50:28 +08:00
page.c hv:cleanup header files for arch folder 2019-02-22 13:14:36 +08:00
pagetable.c hv:cleanup header files for arch folder 2019-02-22 13:14:36 +08:00
pm.c HV: remove some redundant includes 2019-05-08 16:57:46 +08:00
sched.S replace arch_switch_to with pure asm code instead of inline asm 2019-01-25 11:39:47 +08:00
security.c HV: remove vcpu arch lock, not needed. 2019-05-22 16:35:26 +08:00
sgx.c hv: sgx: add basic support to init sgx resource for vm 2019-05-29 11:24:13 +08:00
timer.c HV: Add prefix 'p' before 'cpu' to physical cpu related functions 2019-04-24 10:50:28 +08:00
trampoline.c hv: delay enabling SMEP/SMAP until the end of PCPU initialization 2019-06-10 11:35:15 +08:00
vmx.c hv:move instr_emul_ctxt instance to struct vcpu 2019-03-13 14:04:20 +08:00
vtd.c hv: fix possible null pointer dereference 2019-06-11 16:03:04 +08:00
wakeup.S hv:remove some unnecessary includes 2019-05-07 09:10:13 +08:00