Jean-Philippe Brucker
bf3255b3cf
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 >
2019-06-12 10:19:06 +02:00
..
2019-05-24 17:36:47 +02:00
2019-05-24 11:03:26 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:03 +02:00
2019-05-24 17:27:11 +02:00
2019-05-15 08:46:44 -07:00
2019-05-24 17:37:53 +02:00
2019-05-05 19:34:00 +02:00
2019-05-16 09:19:14 -07:00
2019-05-21 11:28:39 +02:00
2019-05-26 08:30:16 -07:00
2019-05-21 11:28:47 +02:00
2019-05-21 11:28:40 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:02 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 12:33:38 -07:00
2019-05-25 10:11:23 -07:00
2019-05-24 17:27:11 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:27:12 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 11:28:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:01 +02:00
2019-05-24 14:31:58 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-04-13 09:36:35 -04:00
2019-05-24 17:39:02 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:01 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:47 +02:00
2019-05-21 12:33:38 -07:00
2019-05-24 17:36:46 +02:00
2019-05-21 10:50:46 +02:00
2019-06-12 10:19:06 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 11:28:40 +02:00
2019-05-24 17:37:53 +02:00
2019-05-24 17:37:52 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:02 +02:00
2019-05-21 11:28:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-25 10:11:23 -07:00
2019-05-24 17:39:03 +02:00
2019-05-24 17:36:45 +02:00
2019-05-21 11:28:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:39:02 +02:00
2019-05-24 14:31:58 -07:00
2019-05-24 17:39:00 +02:00
2019-05-24 14:31:58 -07:00
2019-05-24 17:39:03 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-25 10:11:23 -07:00
2019-05-24 16:02:14 -07:00
2019-05-21 10:50:46 +02:00
2019-05-13 08:52:37 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-14 10:30:10 -07:00
2019-05-21 10:50:46 +02:00
2019-05-22 08:36:16 -07:00
2019-05-24 17:39:02 +02:00
2019-05-21 11:28:45 +02:00
2019-05-24 14:31:58 -07:00
2019-05-24 17:39:02 +02:00
2019-05-21 11:28:39 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:39:02 +02:00
2019-05-21 11:28:40 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:01 +02:00
2019-05-20 15:02:08 -07:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:30:28 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-04-25 22:23:06 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:27:12 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-23 21:58:25 -07:00
2019-05-21 10:50:46 +02:00
2019-05-19 09:56:36 -07:00
2019-05-24 17:36:45 +02:00
2019-05-18 11:49:57 +09:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:47 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:00 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:39:00 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:37:53 +02:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:37:51 +02:00
2019-05-21 10:50:46 +02:00
2019-04-25 21:33:37 +02:00
2019-04-25 21:33:37 +02:00