From: Alex Williamson <alex.williamson@redhat.com>
To: Kirti Wankhede <kwankhede@nvidia.com>
Cc: <pbonzini@redhat.com>, <kraxel@redhat.com>, <cjia@nvidia.com>,
<qemu-devel@nongnu.org>, <kvm@vger.kernel.org>,
<kevin.tian@intel.com>, <jike.song@intel.com>,
<bjsdjshi@linux.vnet.ibm.com>, <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v9 00/12] Add Mediated device support
Date: Mon, 17 Oct 2016 15:41:04 -0600 [thread overview]
Message-ID: <20161017154104.673b510a@t450s.home> (raw)
In-Reply-To: <1476739332-4911-1-git-send-email-kwankhede@nvidia.com>
On Tue, 18 Oct 2016 02:52:00 +0530
Kirti Wankhede <kwankhede@nvidia.com> wrote:
> This series adds Mediated device support to Linux host kernel. Purpose
> of this series is to provide a common interface for mediated device
> management that can be used by different devices. This series introduces
> Mdev core module that creates and manages mediated devices, VFIO based
> driver for mediated devices that are created by mdev core module and
> update VFIO type1 IOMMU module to support pinning & unpinning for mediated
> devices.
>
> What changed in v9?
> mdev-core:
> - added class named 'mdev_bus' that contains links to devices that are
> registered with the mdev core driver.
> - The [<type-id>] name is created by adding the the device driver string as a
> prefix to the string provided by the vendor driver.
> - 'device_api' attribute should be provided by vendor driver and should show
> which device API is being created, for example, "vfio-pci" for a PCI device.
> - Renamed link to its type in mdev device directory to 'mdev_type'
>
> vfio:
> - Split commits in multple individual commits
> - Added function to get device_api string based on vfio_device_info.flags.
>
> vfio_iommu_type1:
> - Handled the case if all devices attached to the normal IOMMU API domain
> go away and mdev device still exist in domain. Updated page accounting
> for local domain.
> - Similarly if device is attached to normal IOMMU API domain, mappings are
> establised and page accounting is updated accordingly.
> - Tested hot-plug and hot-unplug of vGPU and GPU pass through device with
> Linux VM.
Hi,
I also commented that there must be an invalidation mechanism for pages
pinned by the vendor driver. This is where pfn pinning was adjusting
accounting after a DMA_MAP, where the pfn should have been invalidated
on user unmap. Userspace is in control of page mappings, the vendor
driver cannot maintain references to pages unmapped by the user. I
would suggest that minimally some sort of callback needs to be
registered for every set of pinned pages to be called when the user
unmaps those IOVAs. Thanks,
Alex
>
> Documentation:
> - Updated Documentation and sample driver, mtty.c, accordingly.
>
> Kirti Wankhede (12):
> vfio: Mediated device Core driver
> vfio: VFIO based driver for Mediated devices
> vfio: Rearrange functions to get vfio_group from dev
> vfio iommu: Add support for mediated devices
> vfio: Introduce common function to add capabilities
> vfio_pci: Update vfio_pci to use vfio_info_add_capability()
> vfio: Introduce vfio_set_irqs_validate_and_prepare()
> vfio_pci: Updated to use vfio_set_irqs_validate_and_prepare()
> vfio_platform: Updated to use vfio_set_irqs_validate_and_prepare()
> vfio: Add function to get device_api string from
> vfio_device_info.flags
> docs: Add Documentation for Mediated devices
> docs: Sample driver to demonstrate how to use Mediated device
> framework.
>
> Documentation/vfio-mdev/Makefile | 13 +
> Documentation/vfio-mdev/mtty.c | 1429 ++++++++++++++++++++++
> Documentation/vfio-mdev/vfio-mediated-device.txt | 389 ++++++
> drivers/vfio/Kconfig | 1 +
> drivers/vfio/Makefile | 1 +
> drivers/vfio/mdev/Kconfig | 18 +
> drivers/vfio/mdev/Makefile | 5 +
> drivers/vfio/mdev/mdev_core.c | 372 ++++++
> drivers/vfio/mdev/mdev_driver.c | 128 ++
> drivers/vfio/mdev/mdev_private.h | 41 +
> drivers/vfio/mdev/mdev_sysfs.c | 296 +++++
> drivers/vfio/mdev/vfio_mdev.c | 148 +++
> drivers/vfio/pci/vfio_pci.c | 101 +-
> drivers/vfio/platform/vfio_platform_common.c | 31 +-
> drivers/vfio/vfio.c | 287 ++++-
> drivers/vfio/vfio_iommu_type1.c | 692 +++++++++--
> include/linux/mdev.h | 177 +++
> include/linux/vfio.h | 23 +-
> 18 files changed, 3948 insertions(+), 204 deletions(-)
> create mode 100644 Documentation/vfio-mdev/Makefile
> create mode 100644 Documentation/vfio-mdev/mtty.c
> create mode 100644 Documentation/vfio-mdev/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
>
next prev parent reply other threads:[~2016-10-17 21:41 UTC|newest]
Thread overview: 73+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-17 21:22 Kirti Wankhede
2016-10-17 21:22 ` [PATCH v9 01/12] vfio: Mediated device Core driver Kirti Wankhede
2016-10-18 23:16 ` Alex Williamson
2016-10-19 19:16 ` Kirti Wankhede
2016-10-19 22:20 ` Alex Williamson
2016-10-20 7:23 ` Jike Song
2016-10-20 17:12 ` Alex Williamson
2016-10-21 2:41 ` Jike Song
2016-10-27 5:56 ` Jike Song
2016-10-26 6:52 ` Tian, Kevin
2016-10-26 14:58 ` Kirti Wankhede
2016-10-17 21:22 ` [PATCH v9 02/12] vfio: VFIO based driver for Mediated devices Kirti Wankhede
2016-10-26 6:57 ` Tian, Kevin
2016-10-26 15:01 ` Kirti Wankhede
2016-10-17 21:22 ` [PATCH v9 03/12] vfio: Rearrange functions to get vfio_group from dev Kirti Wankhede
2016-10-19 17:26 ` Alex Williamson
2016-10-17 21:22 ` [PATCH v9 04/12] vfio iommu: Add support for mediated devices Kirti Wankhede
2016-10-19 21:02 ` Alex Williamson
2016-10-20 20:17 ` Kirti Wankhede
2016-10-24 2:32 ` Alex Williamson
2016-10-26 7:19 ` Tian, Kevin
2016-10-26 15:06 ` Kirti Wankhede
2016-10-26 7:53 ` Tian, Kevin
2016-10-26 15:16 ` Alex Williamson
2016-10-26 7:54 ` Tian, Kevin
2016-10-26 15:19 ` Alex Williamson
2016-10-21 7:49 ` Jike Song
2016-10-21 14:36 ` Alex Williamson
2016-10-24 10:35 ` Kirti Wankhede
2016-10-27 7:20 ` [Qemu-devel] " Alexey Kardashevskiy
2016-10-27 12:31 ` Kirti Wankhede
2016-10-27 14:30 ` Alex Williamson
2016-10-27 15:59 ` Kirti Wankhede
2016-10-28 2:18 ` Alexey Kardashevskiy
2016-11-01 14:01 ` Kirti Wankhede
2016-11-02 1:24 ` Alexey Kardashevskiy
2016-11-02 3:29 ` Kirti Wankhede
2016-11-02 4:09 ` Alexey Kardashevskiy
2016-11-02 12:21 ` Jike Song
2016-11-02 12:41 ` Kirti Wankhede
2016-11-02 13:00 ` Jike Song
2016-11-02 13:18 ` Kirti Wankhede
2016-11-02 13:35 ` Jike Song
2016-11-03 4:29 ` Alexey Kardashevskiy
2016-10-17 21:22 ` [PATCH v9 05/12] vfio: Introduce common function to add capabilities Kirti Wankhede
2016-10-20 19:24 ` Alex Williamson
2016-10-24 21:27 ` Kirti Wankhede
2016-10-24 21:39 ` Alex Williamson
2016-10-17 21:22 ` [PATCH v9 06/12] vfio_pci: Update vfio_pci to use vfio_info_add_capability() Kirti Wankhede
2016-10-20 19:24 ` Alex Williamson
2016-10-24 21:22 ` Kirti Wankhede
2016-10-24 21:37 ` Alex Williamson
2016-10-17 21:22 ` [PATCH v9 07/12] vfio: Introduce vfio_set_irqs_validate_and_prepare() Kirti Wankhede
2016-10-17 21:22 ` [PATCH v9 08/12] vfio_pci: Updated to use vfio_set_irqs_validate_and_prepare() Kirti Wankhede
2016-10-17 21:22 ` [PATCH v9 09/12] vfio_platform: " Kirti Wankhede
2016-10-17 21:22 ` [PATCH v9 10/12] vfio: Add function to get device_api string from vfio_device_info.flags Kirti Wankhede
2016-10-20 19:34 ` Alex Williamson
2016-10-20 20:29 ` Kirti Wankhede
2016-10-20 21:05 ` Alex Williamson
2016-10-20 21:14 ` Kirti Wankhede
2016-10-20 21:22 ` Alex Williamson
2016-10-21 3:00 ` Kirti Wankhede
2016-10-21 3:20 ` Alex Williamson
2016-10-17 21:22 ` [PATCH v9 11/12] docs: Add Documentation for Mediated devices Kirti Wankhede
2016-10-25 16:17 ` Alex Williamson
2016-10-17 21:22 ` [PATCH v9 12/12] docs: Sample driver to demonstrate how to use Mediated device framework Kirti Wankhede
[not found] ` <20161018025411.GA22572@bjsdjshi@linux.vnet.ibm.com>
2016-10-18 17:17 ` Alex Williamson
2016-10-19 19:19 ` Kirti Wankhede
2016-10-17 21:41 ` Alex Williamson [this message]
2016-10-24 7:07 ` [PATCH v9 00/12] Add Mediated device support Jike Song
2016-12-05 17:44 ` Gerd Hoffmann
2016-12-06 2:24 ` Jike Song
2016-12-07 14:40 ` Gerd Hoffmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161017154104.673b510a@t450s.home \
--to=alex.williamson@redhat.com \
--cc=bjsdjshi@linux.vnet.ibm.com \
--cc=cjia@nvidia.com \
--cc=jike.song@intel.com \
--cc=kevin.tian@intel.com \
--cc=kraxel@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=kwankhede@nvidia.com \
--cc=linux-kernel@vger.kernel.org \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®