[RFC PATCH v2 0/4] kvm: Make ioeventfd usable on s390.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Here's the second attempt at implementing ioeventfd for s390.

Rather than the architecture-specific functions used in v1, we
now try to integrate with the kvm_io_device infrastructure.
Calls to diagnose 500 subcode 3 are now mapped to _write.
These devices are created on a new KVM_CSS_BUS when using a
new flag KVM_IOEVENTFD_FLAG_CSS. addr and datamatch are (ab)used
to contain the subchannel id and the virtqueue.

A drawback is that this interface is not easily extendable should
we want to attach other hypercalls or carry more payload.

Another limitation is the limit of 1000 io devices per bus, which
we would hit easily with a few hundred devices, but that should
be fixable.

v1 -> v2:
- Move irqfd initialization from a module init function to kvm_init,
  eliminating the need for a second module for kvm/s390.
- Use kvm_io_device for s390 css devices.


Cornelia Huck (4):
  KVM: Initialize irqfd from kvm_init().
  KVM: Introduce KVM_CSS_BUS.
  KVM: ioeventfd for s390 css devices.
  KVM: s390: Wire up ioeventfd.

 Documentation/virtual/kvm/api.txt |  7 +++++++
 arch/s390/kvm/Kconfig             |  1 +
 arch/s390/kvm/Makefile            |  2 +-
 arch/s390/kvm/diag.c              | 25 +++++++++++++++++++++++++
 arch/s390/kvm/kvm-s390.c          |  1 +
 include/linux/kvm_host.h          | 14 ++++++++++++++
 include/uapi/linux/kvm.h          |  2 ++
 virt/kvm/eventfd.c                | 15 ++++++++-------
 virt/kvm/kvm_main.c               |  6 ++++++
 9 files changed, 65 insertions(+), 8 deletions(-)

-- 
1.7.12.4

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux