OpenCloudOS-Kernel/virt/kvm
Alex Williamson 7a84428af7 KVM: Add resampling irqfds for level triggered interrupts
To emulate level triggered interrupts, add a resample option to
KVM_IRQFD.  When specified, a new resamplefd is provided that notifies
the user when the irqchip has been resampled by the VM.  This may, for
instance, indicate an EOI.  Also in this mode, posting of an interrupt
through an irqfd only asserts the interrupt.  On resampling, the
interrupt is automatically de-asserted prior to user notification.
This enables level triggered interrupts to be posted and re-enabled
from vfio with no userspace intervention.

All resampling irqfds can make use of a single irq source ID, so we
reserve a new one for this interface.

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
2012-09-23 13:50:15 +02:00
..
Kconfig KVM: Add config to support ple or cpu relax optimzation 2012-07-23 13:00:53 +03:00
assigned-dev.c KVM: Fix device assignment threaded irq handler 2012-07-11 13:01:48 +03:00
async_pf.c KVM: do not release the error page 2012-08-06 16:04:58 +03:00
async_pf.h KVM: Halt vcpu if page it tries to access is swapped out 2011-01-12 11:21:39 +02:00
coalesced_mmio.c KVM: make checks stricter in coalesced_mmio_in_range() 2011-12-27 11:17:07 +02:00
coalesced_mmio.h KVM: Make coalesced mmio use a device per zone 2011-09-25 19:17:57 +03:00
eventfd.c KVM: Add resampling irqfds for level triggered interrupts 2012-09-23 13:50:15 +02:00
ioapic.c KVM: x86: drop parameter validation in ioapic/pic 2012-08-14 22:35:22 -03:00
ioapic.h KVM: fix race with level interrupts 2012-07-20 16:12:00 -03:00
iodev.h KVM: remove in_range from io devices 2009-09-10 08:33:05 +03:00
iommu.c KVM: do not release the error pfn 2012-08-06 16:04:57 +03:00
irq_comm.c KVM: Add resampling irqfds for level triggered interrupts 2012-09-23 13:50:15 +02:00
kvm_main.c KVM: make processes waiting on vcpu mutex killable 2012-09-17 13:46:32 -03:00