Linus, please pull from
        git://git.infradead.org/intel-iommu.git

This adds "Shared Virtual Memory" (aka PASID support) for the Intel
IOMMU. This allows devices to do DMA using process address space,
translated through the normal CPU page tables for the relevant mm.

With corresponding support added to the i915 driver, this has been
tested with the graphics device on Skylake. We don't have the required
TLP support in our PCIe root ports for supporting discrete devices yet,
so it's only integrated devices that can do it so far.

Dan Carpenter (2):
      iommu/vt-d: shift wrapping bug in prq_event_thread()
      iommu/vt-d: fix a loop in prq_event_thread()

David Woodhouse (20):
      iommu/vt-d: Use plain writeq() for dmar_writeq() where available
      iommu/vt-d: Fix ATSR handling for Root-Complex integrated endpoints
      iommu/vt-d: Introduce intel_iommu=pasid28, and pasid_enabled() macro
      iommu/vt-d: Add initial support for PASID tables
      iommu/vt-d: Always enable PASID/PRI PCI capabilities before ATS
      iommu/vt-d: Add basic SVM PASID support
      iommu/vt-d: Implement deferred invalidate for SVM
      iommu/vt-d: Generalise DMAR MSI setup to allow for page request events
      iommu/vt-d: Implement page request handling
      iommu/vt-d: Add callback to device driver on page faults
      iommu/vt-d: Implement SVM_FLAG_PRIVATE_PASID to allocate unique PASIDs
      iommu/vt-d: Implement SVM_FLAG_SUPERVISOR_MODE for kernel access
      iommu/vt-d: Fix NULL pointer dereference in page request error case
      iommu/vt-d: Fix address shifting in page request handler
      iommu/vt-d: Fix IOTLB flushing for global pages
      iommu/vt-d: Fix SVM IOTLB flush handling
      iommu/vt-d: Handle Caching Mode implementations of SVM
      iommu/vt-d: Clean up pasid_enabled() and ecs_enabled() dependencies
      iommu/vt-d: Expose struct svm_dev_ops without CONFIG_INTEL_IOMMU_SVM
      iommu/vt-d: Fix rwxp flags in SVM device fault callback

Sudeep Dutt (1):
      iommu/vt-d: Use dev_err(..) in intel_svm_device_to_iommu(..)

 drivers/iommu/Kconfig         |  10 +++
 drivers/iommu/Makefile        |   1 +
 drivers/iommu/dmar.c          |  42 ++++++++---
 drivers/iommu/intel-iommu.c   | 303 
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------
 drivers/iommu/intel-svm.c     | 602 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 include/linux/dma_remapping.h |   8 ++
 include/linux/intel-iommu.h   | 139 ++++++++++++++++++++++++++++++----
 include/linux/intel-svm.h     | 121 ++++++++++++++++++++++++++++++
 8 files changed, 1152 insertions(+), 74 deletions(-)

-- 
David Woodhouse                            Open Source Technology Centre
[email protected]                              Intel Corporation

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to