[lkml]   [2010]   [Dec]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH 0/5] KVM&genirq: Enable adaptive IRQ sharing for passed-through devices
Besides 3 cleanup patches, this series consists of two major changes.
The first introduces an interrupt sharing notifier to the genirq
subsystem. It fires when an interrupt line is about to be use by more
than one driver or the last but one user called free_irq.

The second major change makes use of this interface in KVM's PCI pass-
through subsystem. KVM has to keep the interrupt source disabled while
calling into the guest to handle the event. This can be done at device
or line level. The former is required to share the interrupt line, the
latter is an order of magnitude faster (see patch 3 for details).

Beside pass-through support of KVM, further users of the IRQ notifier
could become VFIO (not yet mainline) and uio_pci_generic which have to
resolve the same conflict.

Jan Kiszka (5):
genirq: Pass descriptor to __free_irq
genirq: Introduce interrupt sharing notifier
KVM: Split up MSI-X assigned device IRQ handler
KVM: Clean up unneeded void pointer casts
KVM: Allow host IRQ sharing for passed-through PCI 2.3 devices

Documentation/kvm/api.txt | 25 +++
arch/x86/kvm/x86.c | 1 +
include/linux/interrupt.h | 21 +++
include/linux/irqdesc.h | 9 +
include/linux/kvm.h | 6 +
include/linux/kvm_host.h | 4 +
kernel/irq/irqdesc.c | 6 +
kernel/irq/manage.c | 174 ++++++++++++++++++--
virt/kvm/assigned-dev.c | 420 +++++++++++++++++++++++++++++++++++++++------
9 files changed, 606 insertions(+), 60 deletions(-)

 \ /
  Last update: 2010-12-04 00:41    [W:0.061 / U:1.340 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site