Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp4253287ybi; Mon, 3 Jun 2019 08:00:06 -0700 (PDT) X-Google-Smtp-Source: APXvYqzRYP8G2X8w2hnX4ki1X4TBHqRJ8vpxns7IoEBB2EHHSeS//f2y1QC9LhzGtcsVAKC7NGVg X-Received: by 2002:a17:902:868b:: with SMTP id g11mr29563198plo.183.1559574006793; Mon, 03 Jun 2019 08:00:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1559574006; cv=none; d=google.com; s=arc-20160816; b=itMUO+E7ubHXHovTGdi4GyPh8Du1rWH4nNoLs7QhB8ZPR5SjiuJWc7FBWejRvxv6iK LeBVh+S61xgdqkeZ35rAQkwvnXt/a8Pesd8TuPuHoaS9bbBurIbHd0lSVwuWeci+BcgJ FO1zfAiPjwb1jVm0t7LfLedukac+dnqjYq0sjNNk4jW+A7EURvkL7I+alQax0CrOkGKH lfVRo0GM/99U53YicTi6W2g69K1O2L4U+3Tzq7gsntyldbmG45BZlRhuHfbqyifYVp6i abQpejMVyyFWPrwtranpYs26iCaRMUhga4K5M7hwt6DRC91SmAcAXY2JW3Xf5vv5s3XY M8hg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=0FEbapuXTaMqBRaBXTIV8a/Kcbq6lsUpL5dQNl9ukoQ=; b=I98iVyHVVp+Uwls4OTRath+oNIK0msg3DX4T3AsuEz/jEAs4oNT/HP7A13MpIjXMoi RqDvsyRYdfCgpD1qmaddPCUtwBnqvbwxRRuaGEBOBwtUKvy5vsd6r6UUSn7MD/Pdcb52 AnFclqX0g7aHw7yWb5rH8qMecXdBJDVCkHWuAPpq7FAqgZxUlvENOVwREEHg/5cavKtV LkFHAJFOo2mB9ZrWchdq2mpwo1mAcBQMqUemOckdzwP/rlumTMn4up5fhe/rh0ULzod9 ceBtBwX4Xcotx8N5Jt7zTcID0AwdrB6ulgz1sEWIBSYkVeUrnA6PetOWSQ4v7x02CJn0 LVVw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q8si15156121pll.205.2019.06.03.07.59.50; Mon, 03 Jun 2019 08:00:06 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729261AbfFCO6h (ORCPT + 99 others); Mon, 3 Jun 2019 10:58:37 -0400 Received: from usa-sjc-mx-foss1.foss.arm.com ([217.140.101.70]:52608 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728882AbfFCO6h (ORCPT ); Mon, 3 Jun 2019 10:58:37 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1A66980D; Mon, 3 Jun 2019 07:58:37 -0700 (PDT) Received: from ostrya.cambridge.arm.com (ostrya.cambridge.arm.com [10.1.196.129]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 4AAD03F246; Mon, 3 Jun 2019 07:58:35 -0700 (PDT) From: Jean-Philippe Brucker To: joro@8bytes.org, alex.williamson@redhat.com Cc: jacob.jun.pan@linux.intel.com, eric.auger@redhat.com, ashok.raj@intel.com, yi.l.liu@intel.com, robdclark@gmail.com, linux-kernel@vger.kernel.org, iommu@lists.linux-foundation.org, robin.murphy@arm.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> X-Mailer: git-send-email 2.21.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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-philippe.brucker@arm.com/ 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