KVM: irqfd
KVM provides a complete virtual system environment for guests, including support for injecting interrupts modeled after the real exception/interrupt facilities present on the native platform (such as the IDT on x86). Virtual interrupts can come from a variety of sources (emulated devices, pass-through devices, etc) but all must be injected to the guest via the KVM infrastructure. This patch adds a new mechanism to inject a specific interrupt to a guest using a decoupled eventfd mechnanism: Any legal signal on the irqfd (using eventfd semantics from either userspace or kernel) will translate into an injected interrupt in the guest at the next available interrupt window. Signed-off-by:Gregory Haskins <ghaskins@novell.com> Signed-off-by:
Avi Kivity <avi@redhat.com>
Showing
- arch/x86/kvm/Kconfig 1 addition, 0 deletionsarch/x86/kvm/Kconfig
- arch/x86/kvm/Makefile 1 addition, 1 deletionarch/x86/kvm/Makefile
- arch/x86/kvm/x86.c 1 addition, 0 deletionsarch/x86/kvm/x86.c
- include/linux/kvm.h 11 additions, 0 deletionsinclude/linux/kvm.h
- include/linux/kvm_host.h 24 additions, 0 deletionsinclude/linux/kvm_host.h
- virt/kvm/Kconfig 4 additions, 0 deletionsvirt/kvm/Kconfig
- virt/kvm/eventfd.c 329 additions, 0 deletionsvirt/kvm/eventfd.c
- virt/kvm/kvm_main.c 12 additions, 0 deletionsvirt/kvm/kvm_main.c
Loading
Please register or sign in to comment