diff mbox

[GIT,PULL] VFIO updates for v4.10-rc1

Message ID 20161209152432.7a6044d2@t450s.home (mailing list archive)
State New, archived
Headers show

Pull-request

git://github.com/awilliam/linux-vfio.git tags/vfio-v4.10-rc1

Commit Message

Alex Williamson Dec. 9, 2016, 10:24 p.m. UTC
Hi Linus,

The following changes since commit a25f0944ba9b1d8a6813fd6f1a86f1bd59ac25a6:

  Linux 4.9-rc5 (2016-11-13 10:32:32 -0800)

are available in the git repository at:

  git://github.com/awilliam/linux-vfio.git tags/vfio-v4.10-rc1

for you to fetch changes up to 2b8bb1d771f736b8b34bf160115aee1b12d29f83:

  vfio iommu type1: Fix size argument to vfio_find_dma() in pin_pages/unpin_pages (2016-12-06 12:35:53 -0700)

----------------------------------------------------------------
VFIO updates for v4.10-rc1

 - VFIO updates for v4.10 primarily include a new Mediated Device
   interface, which essentially allows software defined devices to be
   exposed to users through VFIO.  The host vendor driver providing
   this virtual device polices, or mediates user access to the device.
   These devices often incorporate portions of real devices, for
   instance the primary initial users of this interface expose vGPUs
   which allow the user to map mediated devices, or mdevs, to a
   portion of a physical GPU.  QEMU composes these mdevs into PCI
   representations using the existing VFIO user API.  This enables
   both Intel KVM-GT support, which is also expected to arrive into
   Linux mainline during the v4.10 merge window, as well as NVIDIA
   vGPU, and also Channel I/O devices (aka CCW devices) for s390
   virtualization support. (Kirti Wankhede, Neo Jia)

 - Drop unnecessary uses of pcibios_err_to_errno() (Cao Jin)

 - Fixes to VFIO capability chain handling (Eric Auger)

 - Error handling fixes for fallout from mdev (Christophe JAILLET)

 - Notifiers to expose struct kvm to mdev vendor drivers (Jike Song)

 - type1 IOMMU model search fixes (Kirti Wankhede, Neo Jia)

----------------------------------------------------------------
Cao jin (1):
      vfio/pci: Drop unnecessary pcibios_err_to_errno()

Christophe JAILLET (1):
      vfio: Fix handling of error returned by 'vfio_group_get_from_dev()'

Eric Auger (1):
      vfio: fix vfio_info_cap_add/shift

Jike Song (3):
      vfio: vfio_register_notifier: classify iommu notifier
      vfio: support notifier chain in vfio_group
      kvm: set/clear kvm to/from vfio_group when group add/delete

Kirti Wankhede (24):
      vfio: Mediated device Core driver
      vfio: VFIO based driver for Mediated devices
      vfio: Rearrange functions to get vfio_group from dev
      vfio: Common function to increment container_users
      vfio iommu: Added pin and unpin callback functions to vfio_iommu_driver_ops
      vfio iommu type1: Update arguments of vfio_lock_acct
      vfio iommu type1: Update argument of vaddr_get_pfn()
      vfio iommu type1: Add find_iommu_group() function
      vfio iommu type1: Add task structure to vfio_dma
      vfio iommu type1: Add support for mediated devices
      vfio iommu: Add blocking notifier to notify DMA_UNMAP
      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: Define device_api strings
      docs: Add Documentation for Mediated devices
      docs: Sysfs ABI for mediated device framework
      docs: Sample driver to demonstrate how to use Mediated device framework.
      MAINTAINERS: Add entry VFIO based Mediated device drivers
      vfio iommu type1: WARN_ON if notifier block is not unregistered
      vfio iommu type1: Fix size argument to vfio_find_dma() during DMA UNMAP.
      vfio iommu type1: Fix size argument to vfio_find_dma() in pin_pages/unpin_pages

 Documentation/ABI/testing/sysfs-bus-vfio-mdev |  111 ++
 Documentation/vfio-mediated-device.txt        |  398 +++++++
 MAINTAINERS                                   |    9 +
 drivers/vfio/Kconfig                          |    1 +
 drivers/vfio/Makefile                         |    1 +
 drivers/vfio/mdev/Kconfig                     |   17 +
 drivers/vfio/mdev/Makefile                    |    5 +
 drivers/vfio/mdev/mdev_core.c                 |  385 +++++++
 drivers/vfio/mdev/mdev_driver.c               |  119 ++
 drivers/vfio/mdev/mdev_private.h              |   41 +
 drivers/vfio/mdev/mdev_sysfs.c                |  286 +++++
 drivers/vfio/mdev/vfio_mdev.c                 |  148 +++
 drivers/vfio/pci/vfio_pci.c                   |   83 +-
 drivers/vfio/pci/vfio_pci_config.c            |   10 +-
 drivers/vfio/platform/vfio_platform_common.c  |   31 +-
 drivers/vfio/vfio.c                           |  461 +++++++-
 drivers/vfio/vfio_iommu_type1.c               |  885 ++++++++++++---
 include/linux/mdev.h                          |  168 +++
 include/linux/vfio.h                          |   48 +-
 include/uapi/linux/vfio.h                     |   10 +
 samples/vfio-mdev/Makefile                    |   13 +
 samples/vfio-mdev/mtty.c                      | 1503 +++++++++++++++++++++++++
 virt/kvm/vfio.c                               |   18 +
 23 files changed, 4486 insertions(+), 265 deletions(-)
 create mode 100644 Documentation/ABI/testing/sysfs-bus-vfio-mdev
 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
 create mode 100644 samples/vfio-mdev/Makefile
 create mode 100644 samples/vfio-mdev/mtty.c

---
Merge note: Stephen Rothwell has identified an API change conflict in
linux-next for get_user_pages_remote().  Depending on the ordering of
merges versus akpm's branches, a fixup may be necessary as Stephen has
provided in linux-next 20161209 as:

commit 53fa4eed56cb11d8cea7e15a299cd1054ddc0425
Author: Stephen Rothwell <sfr@canb.auug.org.au>
Date:   Wed Dec 7 11:02:15 2016 +1100

    vfio iommu type1: merge fix for get_user_pages_remote API change
    
    Link: http://lkml.kernel.org/r/20161122210511.024ec341@canb.auug.org.au
    Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
    Cc: Lorenzo Stoakes <lstoakes@gmail.com>
    Cc: Michal Hocko <mhocko@suse.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>


I'm not sure how these are typically handled, but I'm hoping to queue
these changes towards the front of the merge window to allow Intel to
get in their dependent changes.  No merge issues vs current mainline as
of v4.9-rc8+ (a37102dcd7ec). Thanks,

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

Patch

diff --git a/drivers/vfio/vfio_iommu_type1.c b/drivers/vfio/vfio_iommu_type1.c
index 9815e45..f3726ba 100644
--- a/drivers/vfio/vfio_iommu_type1.c
+++ b/drivers/vfio/vfio_iommu_type1.c
@@ -362,7 +362,7 @@  static int vaddr_get_pfn(struct mm_struct *mm, unsigned long vaddr,
 
 		down_read(&mm->mmap_sem);
 		ret = get_user_pages_remote(NULL, mm, vaddr, 1, flags, page,
-					    NULL);
+					    NULL, NULL);
 		up_read(&mm->mmap_sem);
 	}