]> www.infradead.org Git - linux.git/commit
iommu: Add recoverable fault reporting
authorJean-Philippe Brucker <jean-philippe.brucker@arm.com>
Mon, 3 Jun 2019 14:57:49 +0000 (15:57 +0100)
committerJoerg Roedel <jroedel@suse.de>
Wed, 12 Jun 2019 08:19:06 +0000 (10:19 +0200)
commitbf3255b3cfe2d06280340dbac3f44b65d3ee6da3
tree8cc9e258d1fa55083b192700bd103a52d919a9b7
parent0c830e6b32826311fc2b9ea1f4679be0f4ef0933
iommu: Add recoverable fault reporting

Some IOMMU hardware features, for example PCI PRI and Arm SMMU Stall,
enable recoverable I/O page faults. Allow IOMMU drivers to report PRI Page
Requests and Stall events through the new fault reporting API. The
consumer of the fault can be either an I/O page fault handler in the host,
or a guest OS.

Once handled, the fault must be completed by sending a page response back
to the IOMMU. Add an iommu_page_response() function to complete a page
fault.

There are two ways to extend the userspace API:
* Add a field to iommu_page_response and a flag to
  iommu_page_response::flags describing the validity of this field.
* Introduce a new iommu_page_response_X structure with a different version
  number. The kernel must then support both versions.

Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com>
Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/iommu.c
include/linux/iommu.h
include/uapi/linux/iommu.h