|
|
Log in / Subscribe / Register

iommu: Add device fault reporting API

From:  Jean-Philippe Brucker <jean-philippe.brucker-AT-arm.com>
To:  joro-AT-8bytes.org, alex.williamson-AT-redhat.com
Subject:  [PATCH v2 0/4] iommu: Add device fault reporting API
Date:  Mon, 3 Jun 2019 15:57:45 +0100
Message-ID:  <20190603145749.46347-1-jean-philippe.brucker@arm.com>
Cc:  jacob.jun.pan-AT-linux.intel.com, eric.auger-AT-redhat.com, ashok.raj-AT-intel.com, yi.l.liu-AT-intel.com, robdclark-AT-gmail.com, linux-kernel-AT-vger.kernel.org, iommu-AT-lists.linux-foundation.org, robin.murphy-AT-arm.com
Archive-link:  Article

Allow device drivers and VFIO to get notified on IOMMU translation
fault, and handle recoverable faults (PCI PRI). Several series require
this API (Intel VT-d and Arm SMMUv3 nested support, as well as the
generic host SVA implementation).

Changes since v1 [1]:
* Allocate iommu_param earlier, in iommu_probe_device().
* Pass struct iommu_fault to fault handlers, instead of the
  iommu_fault_event wrapper.
* Removed unused iommu_fault_event::iommu_private.
* Removed unnecessary iommu_page_response::addr.
* Added iommu_page_response::version, which would allow to introduce a
  new incompatible iommu_page_response structure (as opposed to just
  adding a flag + field).

[1] [PATCH 0/4] iommu: Add device fault reporting API
    https://lore.kernel.org/lkml/20190523180613.55049-1-jean-...

Jacob Pan (3):
  driver core: Add per device iommu param
  iommu: Introduce device fault data
  iommu: Introduce device fault report API

Jean-Philippe Brucker (1):
  iommu: Add recoverable fault reporting

 drivers/iommu/iommu.c      | 236 ++++++++++++++++++++++++++++++++++++-
 include/linux/device.h     |   3 +
 include/linux/iommu.h      |  87 ++++++++++++++
 include/uapi/linux/iommu.h | 153 ++++++++++++++++++++++++
 4 files changed, 476 insertions(+), 3 deletions(-)
 create mode 100644 include/uapi/linux/iommu.h

-- 
2.21.0



Copyright © 2019, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds