[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC v2 0/4] adding mdev bus and vfio support
From: |
Alex Williamson |
Subject: |
Re: [Qemu-devel] [RFC v2 0/4] adding mdev bus and vfio support |
Date: |
Fri, 2 Sep 2016 09:03:52 -0600 |
On Fri, 2 Sep 2016 16:16:08 +0800
Jike Song <address@hidden> wrote:
> This patchset is based on NVidia's "Add Mediated device support" series,
> version 6:
>
> http://www.spinics.net/lists/kvm/msg136472.html
Hi Jike,
I'm thrilled by your active participation here, but I'm confused which
versions I should be reviewing and where the primary development is
going. Kirti sent v7 a week ago, so I would have expected a revision
based on that rather than a re-write based on v6 plus incorporation of a
few of Kirti's patches directly. I liked the last version of these
changes a lot, but we need to figure out how to combine development
because we do not have infinite cycles for review available :-\ Thanks!
Alex
>
>
> Key Changes from Nvidia v6:
>
> - Introduced an independent struct device to host device, thereby
> formed a physical-host-mdev hierarchy, and highly reused Linux
> driver core support;
>
> - Added online/offline to mdev_bus_type, leveraging the 'online'
> attr support from Linux driver core;
>
> - Removed mdev_class and other unecessary stuff;
>
> /*
> * Given the changes above, the code volume of mdev core driver
> * dramatically reduced by ~50%.
> */
>
>
> - Interfaces between vfio_mdev and vendor driver are high-level,
> e.g. ioctl instead of get_irq_info/set_irq_info and reset,
> start/stop became mdev oriented, etc.;
>
> /*
> * Given the changes above, the code volume of mdev core driver
> * dramatically reduced by ~64%.
> */
>
>
> Test
>
> - Tested with KVMGT
>
> TODO
>
> - Re-implement the attribute group of host device as long as the
> sysfs hierarchy in discussion gets finalized;
>
> - Move common routines from current vfio-pci into a higher location,
> export them for various VFIO bus drivers and/or mdev vendor drivers;
>
> - Add implementation examples for vendor drivers to Documentation;
>
> - Refine IOMMU changes
>
>
>
> Jike Song (2):
> Mediated device Core driver
> vfio: VFIO bus driver for MDEV devices
>
> Kirti Wankhede (2):
> vfio iommu: Add support for mediated devices
> docs: Add Documentation for Mediated devices
>
> Documentation/vfio-mediated-device.txt | 203 ++++++++++++++
> drivers/vfio/Kconfig | 1 +
> drivers/vfio/Makefile | 1 +
> drivers/vfio/mdev/Kconfig | 18 ++
> drivers/vfio/mdev/Makefile | 5 +
> drivers/vfio/mdev/mdev_core.c | 250 +++++++++++++++++
> drivers/vfio/mdev/mdev_driver.c | 155 ++++++++++
> drivers/vfio/mdev/mdev_private.h | 29 ++
> drivers/vfio/mdev/mdev_sysfs.c | 155 ++++++++++
> drivers/vfio/mdev/vfio_mdev.c | 187 ++++++++++++
> drivers/vfio/vfio.c | 82 ++++++
> drivers/vfio/vfio_iommu_type1.c | 499
> +++++++++++++++++++++++++++++----
> include/linux/mdev.h | 159 +++++++++++
> include/linux/vfio.h | 13 +-
> 14 files changed, 1709 insertions(+), 48 deletions(-)
> create mode 100644 Documentation/vfio-mediated-device.txt
> create mode 100644 drivers/vfio/mdev/Kconfig
> create mode 100644 drivers/vfio/mdev/Makefile
> create mode 100644 drivers/vfio/mdev/mdev_core.c
> create mode 100644 drivers/vfio/mdev/mdev_driver.c
> create mode 100644 drivers/vfio/mdev/mdev_private.h
> create mode 100644 drivers/vfio/mdev/mdev_sysfs.c
> create mode 100644 drivers/vfio/mdev/vfio_mdev.c
> create mode 100644 include/linux/mdev.h
>