acrn-hypervisor/hypervisor/arch/x86
Zide Chen f4cce46605 hv: disable SMX (Safer Mode Extension) from guest CPUID
SMX should be disabled on guests.

Actually current code assumes SMX is disabled (no VM exit handler for GETSEC
and bit 2 of IA32_FEATURE_CONTROL is set), and this patch simply explicitly
clear guest CPUID.01H.ECX[6].

Since both CPUID.01H.ECX[5] and CPUID.01H.ECX[6] are cleared from guest CPUID,
MSR IA32_SMM_MONITOR_CTL is not available in guests.

Need to make sure CR4.SMXE is cleared in guests.

Tracked-On: #1867
Signed-off-by: Zide Chen <zide.chen@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
2019-01-04 16:05:50 +08:00
..
boot function name change in init.c 2018-12-19 09:07:14 +08:00
configs config: fix no serial output with SBL on UP2 2019-01-03 13:01:07 +08:00
guest hv: disable SMX (Safer Mode Extension) from guest CPUID 2019-01-04 16:05:50 +08:00
assign.c HV: cleanup CONFIG_COM_IRQ related code 2019-01-02 12:15:53 +08:00
cpu_caps.c hv:Change phys_cpu_num to static 2018-12-28 23:26:31 +08:00
cpu_state_tbl.c hv: cpu_state_tbl: fix multiple exits 2018-12-21 16:19:09 +08:00
cpu.c hv:Change pcpu_active_bitmap to static 2018-12-28 23:26:31 +08:00
e820.c hv: fix e820.c violations 2018-12-21 10:33:32 +08:00
ept.c hv: coding style: add const qualifier for some function 2019-01-02 09:35:00 +08:00
gdt.c
idt.S
init.c init: move init_scheduler into cpu.c 2018-12-21 10:34:15 +08:00
io.c hv: decouple IO completion polling from idle thread 2018-12-27 12:35:40 +08:00
ioapic.c HV: x86: Fix "Variable should be declared static" 2018-12-26 13:47:51 +08:00
irq.c Patch for modularising ioapic.[c/h] and related files. 2018-12-21 09:58:25 +08:00
Kconfig HV: change serial PCI cfg to bus:dev.func format 2018-12-20 10:11:02 +08:00
lapic.c hv:Change phys_cpu_num to static 2018-12-28 23:26:31 +08:00
mmu.c hv: fix coding style violations in mmu.c 2018-12-26 14:17:24 +08:00
notify.c hv:Change phys_cpu_num to static 2018-12-28 23:26:31 +08:00
page.c
pagetable.c hv: coding style: add const qualifier for some function 2019-01-02 09:35:00 +08:00
pm.c hv: update coding style for tampoline.c 2018-12-25 13:25:14 +08:00
retpoline-thunk.S
security.c hv: coding style: refine cpu related function to one exit 2018-12-21 13:34:01 +08:00
static_checks.c
timer.c remove check_tsc 2018-12-17 14:31:52 +08:00
trampoline.c hv: update coding style for tampoline.c 2018-12-25 13:25:14 +08:00
trusty.c hv: coding style: add const qualifier for some function 2019-01-02 09:35:00 +08:00
virq.c hv: virq: fix wrong coding style 2019-01-04 11:10:30 +08:00
vmcs.c hv: disable SMX (Safer Mode Extension) from guest CPUID 2019-01-04 16:05:50 +08:00
vmexit.c hv: vmexit: fix MISRA-C violations related to multiple exits 2018-12-20 23:05:13 +08:00
vmx_asm.S move security related funcs into security.c 2018-12-19 09:07:14 +08:00
vmx.c hv: vmcs: fix MISRA-C violations related to pointer 2018-12-19 13:04:23 +08:00
vtd.c hv: use asm_pause() to replace inline ASM to satisfy MISRAC 2018-12-27 12:35:40 +08:00
wakeup.S HV: modularization to refine pm related code. 2018-12-19 13:02:09 +08:00