acrn-hypervisor/hypervisor/include/arch/x86
Kaige Fu 29b7aff59f HV: Use NMI-window exiting to address req missing issue
There is a window where we may miss the current request in the
notification period when the work flow is as the following:

      CPUx +                   + CPUr
           |                   |
           |                   +--+
           |                   |  | Handle pending req
           |                   <--+
           +--+                |
           |  | Set req flag   |
           <--+                |
           +------------------>---+
           |     Send NMI      |  | Handle NMI
           |                   <--+
           |                   |
           |                   |
           |                   +--> vCPU enter
           |                   |
           +                   +

So, this patch enables the NMI-window exiting to trigger the next vmexit
once there is no "virtual-NMI blocking" after vCPU enter into VMX non-root
mode. Then we can process the pending request on time.

Tracked-On: #3886
Acked-by: Eddie Dong <eddie.dong@intel.com>
Signed-off-by: Kaige Fu <kaige.fu@intel.com>
2019-12-16 16:54:30 +08:00
..
boot
guest hv: add lock for ept add/modify/del 2019-12-16 14:41:21 +08:00
lib hv: Add a helper to account bitmap weight 2019-09-24 11:58:45 +08:00
apicreg.h
board.h HV: fix misra violation on platform clos array 2019-11-08 16:40:14 +08:00
cat.h
cpu_caps.h hv: support xsave in context switch 2019-12-02 09:31:12 +08:00
cpu.h HV: rename CONFIG_MAX_PCPU_NUM to MAX_PCPU_NUM 2019-12-12 13:49:28 +08:00
cpufeatures.h hv: support xsave in context switch 2019-12-02 09:31:12 +08:00
cpuid.h hv: support xsave in context switch 2019-12-02 09:31:12 +08:00
default_acpi_info.h
e820.h hv: mmu: rename e820 to hv_e820 2019-11-07 08:47:02 +08:00
gdt.h
host_pm.h
idt.h
init.h
io.h
ioapic.h
irq.h HV: Use NMI-window exiting to address req missing issue 2019-12-16 16:54:30 +08:00
lapic.h HV: Add helper function send_single_nmi 2019-12-13 10:13:09 +08:00
mmu.h
msr.h hv: ept: apply MCE on page size change mitigation conditionally 2019-12-03 09:17:04 +08:00
multiboot.h
page.h hv: ept: build 4KB page mapping in EPT for RTVM for MCE on PSC 2019-12-03 09:17:04 +08:00
pci_dev.h
per_cpu.h HV: rename CONFIG_MAX_PCPU_NUM to MAX_PCPU_NUM 2019-12-12 13:49:28 +08:00
pgtable.h
security.h hv: ept: apply MCE on page size change mitigation conditionally 2019-12-03 09:17:04 +08:00
seed.h
sgx.h
timer.h
trampoline.h
vm_config.h HV: Kconfig: remove MAX_VCPUS_PER_VM in Kconfig 2019-12-12 13:49:28 +08:00
vmx.h
vtd.h HV: add DRHD index to pci_pdev 2019-11-27 09:49:32 +08:00
zeropage.h