OpenCloudOS-Kernel/arch/x86/kvm
Jan Kiszka 33f089ca5a KVM: VMX: refactor/fix IRQ and NMI injectability determination
There are currently two ways in VMX to check if an IRQ or NMI can be
injected:
 - vmx_{nmi|irq}_enabled and
 - vcpu.arch.{nmi|interrupt}_window_open.
Even worse, one test (at the end of vmx_vcpu_run) uses an inconsistent,
likely incorrect logic.

This patch consolidates and unifies the tests over
{nmi|interrupt}_window_open as cache + vmx_update_window_states
for updating the cache content.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
2008-12-31 16:51:40 +02:00
..
Kconfig KVM: Require the PCI subsystem 2008-11-11 20:56:13 +02:00
Makefile KVM: Separate irq ack notification out of arch/x86/kvm/irq.c 2008-10-15 14:25:35 +02:00
i8254.c KVM: Fix pit memory leak if unable to allocate irq source id 2008-11-11 21:01:51 +02:00
i8254.h KVM: Fix guest shared interrupt with in-kernel irqchip 2008-10-28 14:21:34 +02:00
i8259.c KVM: PIC: enhance IPI avoidance 2008-10-15 14:25:28 +02:00
irq.c KVM: Separate irq ack notification out of arch/x86/kvm/irq.c 2008-10-15 14:25:35 +02:00
irq.h KVM: Separate irq ack notification out of arch/x86/kvm/irq.c 2008-10-15 14:25:35 +02:00
kvm_cache_regs.h KVM: x86: accessors for guest registers 2008-10-15 10:13:57 +02:00
kvm_svm.h KVM: SVM: allocate the MSR permission map per VCPU 2008-04-27 11:53:21 +03:00
lapic.c Merge commit 'linus/master' into merge-linus 2008-10-17 09:20:26 -07:00
lapic.h KVM: add statics were possible, function definition in lapic.h 2008-07-20 12:40:46 +03:00
mmu.c KVM: MMU: fix sync of ptes addressed at owner pagetable 2008-11-23 15:24:19 +02:00
mmu.h KVM: MMU: Fix false flooding when a pte points to page table 2008-07-20 12:40:50 +03:00
paging_tmpl.h KVM: MMU: avoid creation of unreachable pages in the shadow 2008-11-26 12:34:27 +02:00
svm.c KVM: x86: trap invlpg 2008-10-15 14:25:21 +02:00
svm.h KVM: x86: hardware task switching support 2008-04-27 12:00:39 +03:00
tss.h KVM: x86: hardware task switching support 2008-04-27 12:00:39 +03:00
vmx.c KVM: VMX: refactor/fix IRQ and NMI injectability determination 2008-12-31 16:51:40 +02:00
vmx.h KVM: VMX: Set IGMT bit in EPT entry 2008-11-11 21:00:37 +02:00
x86.c KVM: x86: Reset pending/inject NMI state on CPU reset 2008-12-31 16:51:40 +02:00
x86.h KVM: Add a pending interrupt queue 2008-10-15 10:15:13 +02:00
x86_emulate.c KVM: x86 emulator: consolidate push reg 2008-12-31 16:51:39 +02:00