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-16 11:05:11 -07:00
2019-05-24 17:27:12 +02:00
2019-05-16 09:19:14 -07:00
2019-05-11 10:54:43 -04:00
2019-05-15 18:50:40 -07:00
2019-05-19 10:58:45 -07:00
2019-05-24 17:36:45 +02:00
2019-05-15 18:21:43 -07:00
2019-05-24 17:36:45 +02:00
2019-05-20 08:21:07 -07:00
2019-05-24 17:39:00 +02:00
2019-05-24 17:39:00 +02:00
2019-05-21 11:28:39 +02:00
2019-05-24 17:27:13 +02:00
2019-05-24 17:36:45 +02:00
2019-05-21 11:28:40 +02:00
2019-05-14 19:52:52 -07:00
2019-05-19 10:58:45 -07:00
2019-05-15 18:21:43 -07:00
2019-05-14 10:30:10 -07:00
2019-05-24 17:27:12 +02:00
2019-05-24 17:39:02 +02:00
2019-05-24 17:27:11 +02:00
2019-05-24 17:27:11 +02:00
2019-05-24 17:27:11 +02:00
2019-05-24 17:27:11 +02:00
2019-05-24 17:27:11 +02:00
2019-05-21 11:28:46 +02:00
2019-05-24 17:37:52 +02:00
2019-05-24 17:37:52 +02:00
2019-05-14 09:47:48 -07:00
2019-05-14 19:52:50 -07:00
2019-05-23 10:25:26 -06:00
2019-05-14 19:52:49 -07:00
2019-05-23 10:25:26 -06:00
2019-05-23 10:25:26 -06:00
2019-05-24 17:36:45 +02:00
2019-05-14 10:47:29 -07:00
2019-05-15 13:21:37 -07:00
2019-05-14 19:52:48 -07:00
2019-05-18 15:52:26 -07:00
2019-05-24 17:27:11 +02:00
2019-05-14 07:57:29 -07:00
2019-05-10 12:20:36 +02:00
2019-05-10 05:29:27 -07:00
2019-05-14 19:52:50 -07:00
2019-05-24 17:27:11 +02:00
2019-05-20 15:02:08 -07:00
2019-05-24 17:27:11 +02:00
2019-06-12 10:19:06 +02:00
2019-05-24 17:37:52 +02:00
2019-05-24 17:37:54 +02:00
2019-05-21 11:28:40 +02:00
2019-05-15 17:35:54 +01:00
2019-05-24 17:37:53 +02:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:27:11 +02:00
2019-05-24 17:27:11 +02:00
2019-05-12 18:16:31 -04:00
2019-05-24 17:27:12 +02:00
2019-05-13 15:08:16 -07:00
2019-05-13 15:08:16 -07:00
2019-05-15 16:05:47 -07:00
2019-05-14 09:47:47 -07:00
2019-05-14 09:47:48 -07:00
2019-05-21 11:28:39 +02:00
2019-05-14 09:47:44 -07:00
2019-05-14 09:47:48 -07:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:36:45 +02:00
2019-05-21 11:28:39 +02:00
2019-05-21 11:28:39 +02:00
2019-05-21 11:28:39 +02:00
2019-05-21 11:28:39 +02:00
2019-05-21 11:28:39 +02:00
2019-06-12 10:19:06 +02:00
2019-05-14 19:52:52 -07:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:37:52 +02:00
2019-05-14 19:52:49 -07:00
2019-05-24 17:27:11 +02:00
2019-05-24 17:27:11 +02:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:36:45 +02:00
2019-05-14 19:52:48 -07:00
2019-05-15 23:39:38 +02:00
2019-05-14 19:52:49 -07:00
2019-05-21 11:28:46 +02:00
2019-05-24 17:39:02 +02:00
2019-05-14 19:52:49 -07:00
2019-05-16 15:55:48 -07:00
2019-05-21 11:28:45 +02:00
2019-05-24 17:37:53 +02:00
2019-05-13 09:23:18 -04:00
2019-05-14 09:47:50 -07:00
2019-05-14 19:52:53 -07:00
2019-05-14 09:47:50 -07:00
2019-05-14 09:47:49 -07:00
2019-05-21 11:28:45 +02:00
2019-05-14 09:47:46 -07:00
2019-05-14 19:52:48 -07:00
2019-05-14 19:52:48 -07:00
2019-05-14 09:47:49 -07:00
2019-05-14 19:52:48 -07:00
2019-05-14 10:55:54 -07:00
2019-05-24 17:27:10 +02:00
2019-05-19 10:58:45 -07:00
2019-05-14 17:19:47 +02:00
2019-05-19 10:35:20 -07:00
2019-05-24 17:27:11 +02:00
2019-05-16 10:29:00 -07:00
2019-05-14 09:47:51 -07:00
2019-05-14 10:30:10 -07:00
2019-05-21 10:50:45 +02:00
2019-05-17 10:33:30 -07:00
2019-05-21 11:28:45 +02:00
2019-05-13 10:51:31 +02:00
2019-05-24 17:36:45 +02:00
2019-05-14 19:52:48 -07:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:36:45 +02:00
2019-05-14 19:52:51 -07:00
2019-05-14 19:52:48 -07:00
2019-05-14 19:52:48 -07:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:36:45 +02:00
2019-05-14 19:52:48 -07:00
2019-05-17 10:08:59 -07:00
2019-05-14 19:52:51 -07:00
2019-05-16 09:45:20 -07:00
2019-05-21 11:28:46 +02:00
2019-05-21 11:28:46 +02:00
2019-05-14 19:52:48 -07:00
2019-05-24 17:39:00 +02:00
2019-05-16 12:17:50 -07:00
2019-05-16 15:51:55 -07:00
2019-05-24 17:36:45 +02:00
2019-05-21 11:28:46 +02:00
2019-05-16 16:16:18 -07:00
2019-05-24 17:39:02 +02:00
2019-05-14 09:47:45 -07:00
2019-05-24 17:27:11 +02:00
2019-05-24 17:27:13 +02:00
2019-05-24 17:27:13 +02:00
2019-05-12 13:11:36 -04:00
2019-05-24 17:39:00 +02:00
2019-05-18 15:52:26 -07:00
2019-05-14 09:47:45 -07:00
2019-05-15 17:35:54 +01:00
2019-05-24 17:36:47 +02:00