1
linux/arch/x86/kvm
Jan Kiszka 4531220b71 KVM: x86: Rework user space NMI injection as KVM_CAP_USER_NMI
There is no point in doing the ready_for_nmi_injection/
request_nmi_window dance with user space. First, we don't do this for
in-kernel irqchip anyway, while the code path is the same as for user
space irqchip mode. And second, there is nothing to loose if a pending
NMI is overwritten by another one (in contrast to IRQs where we have to
save the number). Actually, there is even the risk of raising spurious
NMIs this way because the reason for the held-back NMI might already be
handled while processing the first one.

Therefore this patch creates a simplified user space NMI injection
interface, exporting it under KVM_CAP_USER_NMI and dropping the old
KVM_CAP_NMI capability. And this time we also take care to provide the
interface only on archs supporting NMIs via KVM (right now only x86).

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
2008-12-31 16:55:47 +02:00
..
i8254.c KVM: x86: Optimize NMI watchdog delivery 2008-12-31 16:51:47 +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: x86: Fix and refactor NMI watchdog emulation 2008-12-31 16:51:46 +02:00
Kconfig KVM: Require the PCI subsystem 2008-11-11 20:56:13 +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: move svm.h to include/asm 2008-12-31 16:52:28 +02:00
lapic.c KVM: x86: Optimize NMI watchdog delivery 2008-12-31 16:51:47 +02:00
lapic.h KVM: add statics were possible, function definition in lapic.h 2008-07-20 12:40:46 +03:00
Makefile KVM: Separate irq ack notification out of arch/x86/kvm/irq.c 2008-10-15 14:25:35 +02:00
mmu.c KVM: MMU: check for present pdptr shadow page in walk_shadow 2008-12-31 16:55:46 +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: prepopulate the shadow on invlpg 2008-12-31 16:55:44 +02:00
svm.c KVM: SVM: move svm_hardware_disable() code to asm/virtext.h 2008-12-31 16:52:30 +02:00
tss.h KVM: x86: hardware task switching support 2008-04-27 12:00:39 +03:00
vmx.c KVM: x86: Rework user space NMI injection as KVM_CAP_USER_NMI 2008-12-31 16:55:47 +02:00
x86_emulate.c KVM: x86 emulator: Fix handling of VMMCALL instruction 2008-12-31 16:55:43 +02:00
x86.c KVM: x86: Rework user space NMI injection as KVM_CAP_USER_NMI 2008-12-31 16:55:47 +02:00
x86.h KVM: Add a pending interrupt queue 2008-10-15 10:15:13 +02:00