acrn-hypervisor/hypervisor/arch/x86
Yan, Like f15a3600ec hv: fix tsc_deadline correctness issue
Fix tsc_deadline issue by trapping TSC_DEADLINE msr write if VMX_TSC_OFFSET is not 0.
Because there is an assupmtion in the ACRN vART design that pTSC_Adjust and vTSC_Adjust are
both 0.
We can leave the TSC_DEADLINE write pass-through without correctness issue becuase there is
no offset between the pTSC and vTSC, and there is no write to vTSC or vTSC_Adjust write observed
in the RTOS so far.
This commit fix the potential correctness issue, but the RT performance will be badly affected
if vTSC or vTSC_Adjust was not zero, which we will address if such case happened.

Tracked-On: #3636
Signed-off-by: Yan, Like <like.yan@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
2019-09-05 09:58:16 +08:00
..
boot hv:remove some unnecessary includes 2019-05-07 09:10:13 +08:00
configs hv: remove mptable code for pre-launched VMs 2019-08-29 10:12:25 +08:00
guest hv: fix tsc_deadline correctness issue 2019-09-05 09:58:16 +08:00
lib hv: move 3 files to lib & arch folder 2019-06-14 14:22:51 +08:00
seed HV: fix violations touched type conversion 2019-07-11 09:16:09 +08:00
cat.c hv:remove some unnecessary includes 2019-05-07 09:10:13 +08:00
cpu_caps.c hv: add "invariant TSC" cap detection 2019-09-05 09:58:16 +08:00
cpu_state_tbl.c HV: add board specific cpu state table to support Px Cx 2019-07-29 20:25:16 +08:00
cpu.c HV: Remove the mixed usage of inline assembly in wait_sync_change 2019-07-26 10:55:58 +08:00
e820.c hv: cleanup some hva/hpa conversion code 2019-03-15 09:03:14 +08:00
gdt.c
idt.S
init.c HV: change param type of init_pcpu_pre 2019-07-17 13:48:00 +08:00
ioapic.c HV: fix violations touched type conversion 2019-07-11 09:16:09 +08:00
irq.c hv: fix Violations touched ACRN Coding Guidelines 2019-08-15 09:47:11 +08:00
Kconfig HV: move vCOM setting from Kconfig to board configs 2019-08-22 13:12:54 +08:00
lapic.c hv: fix some potential array overflow risk 2019-07-12 09:41:15 +08:00
mmu.c hv: ept: flush cache for modified ept entries 2019-08-26 10:47:17 +08:00
notify.c hv: fix some potential array overflow risk 2019-07-12 09:41:15 +08:00
page.c hv: ept: flush cache for modified ept entries 2019-08-26 10:47:17 +08:00
pagetable.c hv: ept: flush cache for modified ept entries 2019-08-26 10:47:17 +08:00
pm.c hv:move some APIs related host reset to pm.c 2019-08-22 14:09:18 +08:00
sched.S
security.c HV: check security mitigation support for SSBD 2019-07-10 10:55:34 +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 softirq: disable interrupt when modify timer_list 2019-08-01 15:45:02 +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:fix "no prototype for non-static function" 2019-07-09 10:36:03 +08:00
vtd.c hv: vtd: fix MACRO typos 2019-08-29 12:41:53 +08:00
wakeup.S hv:remove some unnecessary includes 2019-05-07 09:10:13 +08:00