[Top][All Lists]

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

[Qemu-devel] [RFC PATCH 0/5] VFIO-NG group/device/iommu framework

From: Alex Williamson
Subject: [Qemu-devel] [RFC PATCH 0/5] VFIO-NG group/device/iommu framework
Date: Thu, 01 Sep 2011 13:50:23 -0600
User-agent: StGIT/0.14.3

Trying to move beyond talking about how VFIO should work to
re-writing the code.  This is pre-alpha, known broken, will
probably crash your system but it illustrates some of how
I see groups, devices, and iommus interacting.  This is just
the framework, no code to actually support user space drivers
or device assignment yet.

The iommu portions are still using the "FIXME" PCI specific
hooks.  Once Joerg gets some buy-in on his bus specific iommu
patches, we can move to that.

The group management is more complicated than I'd like and
you can get groups into a bad state by killing the test program
with devices/iommus open.  The locking is overly simplistic.
But, it's a start.  Please make constructive comments and
suggestions.  Patches based on v3.0.  Thanks,



Alex Williamson (5):
      VFIO: Simple test tool
      VFIO: Add PCI device support
      VFIO: Base framework for new VFIO driver
      intel-iommu: Implement iommu_device_group
      iommu: Add iommu_device_group callback and iommu_group sysfs entry

 drivers/Kconfig                |    2 
 drivers/Makefile               |    1 
 drivers/base/iommu.c           |   51 ++
 drivers/pci/intel-iommu.c      |   52 ++
 drivers/vfio/Kconfig           |   12 +
 drivers/vfio/Makefile          |    4 
 drivers/vfio/vfio_device.c     |  109 +++++
 drivers/vfio/vfio_iommu.c      |   81 ++++
 drivers/vfio/vfio_main.c       |  889 ++++++++++++++++++++++++++++++++++++++++
 drivers/vfio/vfio_pci.c        |  124 ++++++
 drivers/vfio/vfio_private.h    |   87 ++++
 include/linux/iommu.h          |    6 
 tools/testing/vfio/Makefile    |    4 
 tools/testing/vfio/vfio_test.c |  406 ++++++++++++++++++
 14 files changed, 1828 insertions(+), 0 deletions(-)
 create mode 100644 drivers/vfio/Kconfig
 create mode 100644 drivers/vfio/Makefile
 create mode 100644 drivers/vfio/vfio_device.c
 create mode 100644 drivers/vfio/vfio_iommu.c
 create mode 100644 drivers/vfio/vfio_main.c
 create mode 100644 drivers/vfio/vfio_pci.c
 create mode 100644 drivers/vfio/vfio_private.h
 create mode 100644 tools/testing/vfio/Makefile
 create mode 100644 tools/testing/vfio/vfio_test.c

reply via email to

[Prev in Thread] Current Thread [Next in Thread]