public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 kvmtool 00/11] Add PCI passthrough support with VFIO
@ 2017-10-31 19:14 Jean-Philippe Brucker
  2017-10-31 19:14 ` [PATCH v3 kvmtool 01/11] pci: add config operations callbacks on the PCI header Jean-Philippe Brucker
                   ` (11 more replies)
  0 siblings, 12 replies; 15+ messages in thread
From: Jean-Philippe Brucker @ 2017-10-31 19:14 UTC (permalink / raw)
  To: kvm
  Cc: will.deacon, robin.murphy, lorenzo.pieralisi, marc.zyngier,
	punit.agrawal

This series implements PCI pass-through using VFIO in kvmtool. We
introduce a new parameter to lkvm run, --vfio-group, that takes an IOMMU
group number as argument, and passes all devices in the group to the
guest.

Since last version [1], I fixed a few things pointed out by Punit. The
series has now been tested on hardware (previously only software model.)

* Import VFIO headers from Linux (6/11 is new).
* Allow a guest to choose between INTx, MSI and MSI-X instead of
  presenting only the one we prefer. INTx has to be enabled from the
  start, since we're not notified when the guest starts using it. When
  it enables MSI or MSI-X, we disable INTx.
* Fixed PCI capability initialization and header parsing.
* Tested the MSI support (9/11), since the Intel IGB NIC used for
  testing has both MSI and MSI-X capabilities.

[1] http://www.spinics.net/lists/kvm/msg151823.html
[2] git://linux-arm.org/kvmtool-jpb.git vfio/v3

Jean-Philippe Brucker (11):
  pci: add config operations callbacks on the PCI header
  pci: allow to specify IRQ type for PCI devices
  irq: add irqfd helpers
  Extend memory bank API with memory types
  pci: add capability helpers
  Import VFIO headers
  Add PCI device passthrough using VFIO
  vfio-pci: add MSI-X support
  vfio-pci: add MSI support
  Introduce reserved memory regions
  vfio: check reserved regions before mapping DMA

 Makefile                     |    2 +
 arm/gic.c                    |   74 ++-
 arm/include/arm-common/gic.h |    6 +
 arm/kvm.c                    |    2 +-
 arm/pci.c                    |    4 +-
 builtin-run.c                |    5 +
 hw/pci-shmem.c               |   12 +-
 hw/vesa.c                    |    2 +-
 include/kvm/irq.h            |   17 +
 include/kvm/kvm-config.h     |    3 +
 include/kvm/kvm.h            |   54 +-
 include/kvm/pci.h            |  118 ++++-
 include/kvm/vfio.h           |  109 ++++
 include/linux/vfio.h         |  719 +++++++++++++++++++++++++
 irq.c                        |   24 +
 kvm.c                        |   99 +++-
 mips/kvm.c                   |    6 +-
 pci.c                        |  105 ++--
 powerpc/kvm.c                |    2 +-
 vfio/core.c                  |  430 +++++++++++++++
 vfio/pci.c                   | 1184 ++++++++++++++++++++++++++++++++++++++++++
 virtio/net.c                 |    9 +-
 virtio/scsi.c                |   10 +-
 x86/kvm.c                    |    6 +-
 24 files changed, 2879 insertions(+), 123 deletions(-)
 create mode 100644 include/kvm/vfio.h
 create mode 100644 include/linux/vfio.h
 create mode 100644 vfio/core.c
 create mode 100644 vfio/pci.c

-- 
2.14.3

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2017-11-15 18:00 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-31 19:14 [PATCH v3 kvmtool 00/11] Add PCI passthrough support with VFIO Jean-Philippe Brucker
2017-10-31 19:14 ` [PATCH v3 kvmtool 01/11] pci: add config operations callbacks on the PCI header Jean-Philippe Brucker
2017-10-31 19:14 ` [PATCH v3 kvmtool 02/11] pci: allow to specify IRQ type for PCI devices Jean-Philippe Brucker
2017-10-31 19:14 ` [PATCH v3 kvmtool 03/11] irq: add irqfd helpers Jean-Philippe Brucker
2017-10-31 19:14 ` [PATCH v3 kvmtool 04/11] Extend memory bank API with memory types Jean-Philippe Brucker
2017-10-31 19:14 ` [PATCH v3 kvmtool 05/11] pci: add capability helpers Jean-Philippe Brucker
2017-10-31 19:14 ` [PATCH v3 kvmtool 06/11] Import VFIO headers Jean-Philippe Brucker
2017-10-31 19:14 ` [PATCH v3 kvmtool 07/11] Add PCI device passthrough using VFIO Jean-Philippe Brucker
2017-10-31 19:14 ` [PATCH v3 kvmtool 08/11] vfio-pci: add MSI-X support Jean-Philippe Brucker
2017-10-31 19:14 ` [PATCH v3 kvmtool 09/11] vfio-pci: add MSI support Jean-Philippe Brucker
2017-10-31 19:14 ` [PATCH v3 kvmtool 10/11] Introduce reserved memory regions Jean-Philippe Brucker
2017-10-31 19:14 ` [PATCH v3 kvmtool 11/11] vfio: check reserved regions before mapping DMA Jean-Philippe Brucker
2017-10-31 21:17 ` [PATCH v3 kvmtool 00/11] Add PCI passthrough support with VFIO Alex Williamson
2017-11-01 17:16   ` Jean-Philippe Brucker
2017-11-15 18:01     ` Will Deacon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox