public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/9] iommu: Prepare to deliver page faults to user space
@ 2023-07-11  1:06 Lu Baolu
  2023-07-11  1:06 ` [PATCH 1/9] iommu: Move iommu fault data to linux/iommu.h Lu Baolu
                   ` (8 more replies)
  0 siblings, 9 replies; 37+ messages in thread
From: Lu Baolu @ 2023-07-11  1:06 UTC (permalink / raw)
  To: Joerg Roedel, Will Deacon, Robin Murphy, Jason Gunthorpe,
	Kevin Tian, Jean-Philippe Brucker, Nicolin Chen
  Cc: Yi Liu, Jacob Pan, iommu, kvm, linux-kernel, Lu Baolu

When a user-managed page table is attached to an IOMMU, it is necessary
to deliver IO page faults to user space so that they can be handled
appropriately. One use case for this is nested translation, which is
currently being discussed in the mailing list.

I have posted a RFC series [1] that describes the implementation of
delivering page faults to user space through IOMMUFD. This series has
received several comments on the IOMMU refactoring, which I have
addressed in this series.

The major refactoring includes:

- Removing include/uapi/linux/iommu.h.
- Removing iommu_[un]register_device_fault_handler().
- Making fault_param always available between iommu device probe and
  release.
- Using fault cookie to store temporary data used for processing faults.

This is also available at github [2]. I would appreciate your feedback
on this series.

[1] https://lore.kernel.org/linux-iommu/20230530053724.232765-1-baolu.lu@linux.intel.com/
[2] https://github.com/LuBaolu/intel-iommu/commits/preparatory-io-pgfault-delivery-v1

Best regards,
baolu

Lu Baolu (9):
  iommu: Move iommu fault data to linux/iommu.h
  iommu: Add device parameter to iopf handler
  iommu: Add common code to handle IO page faults
  iommu: Change the return value of dev_iommu_get()
  iommu: Make fault_param generic
  iommu: Remove iommu_[un]register_device_fault_handler()
  iommu: Add helper to set iopf handler for domain
  iommu: Add iommu page fault cookie helpers
  iommu: Use fault cookie to store iopf_param

 include/linux/iommu.h                         | 206 +++++++++++++++---
 drivers/iommu/iommu-sva.h                     |   8 +-
 include/uapi/linux/iommu.h                    | 161 --------------
 .../iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c   |  13 +-
 drivers/iommu/intel/iommu.c                   |  18 +-
 drivers/iommu/io-pgfault.c                    |  55 +++--
 drivers/iommu/iommu-sva.c                     |   2 +-
 drivers/iommu/iommu.c                         | 199 ++++++++---------
 MAINTAINERS                                   |   1 -
 9 files changed, 320 insertions(+), 343 deletions(-)
 delete mode 100644 include/uapi/linux/iommu.h

-- 
2.34.1


^ permalink raw reply	[flat|nested] 37+ messages in thread

end of thread, other threads:[~2023-07-14  2:49 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-11  1:06 [PATCH 0/9] iommu: Prepare to deliver page faults to user space Lu Baolu
2023-07-11  1:06 ` [PATCH 1/9] iommu: Move iommu fault data to linux/iommu.h Lu Baolu
2023-07-11  6:05   ` Tian, Kevin
2023-07-12  2:07     ` Baolu Lu
2023-07-12  9:33       ` Jean-Philippe Brucker
2023-07-13  3:22         ` Tian, Kevin
2023-07-13  3:48           ` Baolu Lu
2023-07-11  1:06 ` [PATCH 2/9] iommu: Add device parameter to iopf handler Lu Baolu
2023-07-11 17:26   ` Jacob Pan
2023-07-12  2:16     ` Baolu Lu
2023-07-12  5:46       ` Jacob Pan
2023-07-11  1:06 ` [PATCH 3/9] iommu: Add common code to handle IO page faults Lu Baolu
2023-07-11  6:12   ` Tian, Kevin
2023-07-12  2:32     ` Baolu Lu
2023-07-12  9:45       ` Jean-Philippe Brucker
2023-07-13  4:02         ` Baolu Lu
2023-07-11 20:50   ` Jacob Pan
2023-07-12  2:37     ` Baolu Lu
2023-07-11  1:06 ` [PATCH 4/9] iommu: Change the return value of dev_iommu_get() Lu Baolu
2023-07-11 21:05   ` Jacob Pan
2023-07-11  1:06 ` [PATCH 5/9] iommu: Make fault_param generic Lu Baolu
2023-07-11  6:14   ` Tian, Kevin
2023-07-12  2:43     ` Baolu Lu
2023-07-11 21:31   ` Jacob Pan
2023-07-12  3:02     ` Baolu Lu
2023-07-11  1:06 ` [PATCH 6/9] iommu: Remove iommu_[un]register_device_fault_handler() Lu Baolu
2023-07-11  1:06 ` [PATCH 7/9] iommu: Add helper to set iopf handler for domain Lu Baolu
2023-07-11  1:06 ` [PATCH 8/9] iommu: Add iommu page fault cookie helpers Lu Baolu
2023-07-11  1:06 ` [PATCH 9/9] iommu: Use fault cookie to store iopf_param Lu Baolu
2023-07-11  6:26   ` Tian, Kevin
2023-07-12  3:09     ` Baolu Lu
2023-07-11 22:02   ` Jacob Pan
2023-07-12  3:13     ` Baolu Lu
2023-07-13  3:24       ` Tian, Kevin
2023-07-13  3:43         ` Baolu Lu
2023-07-13  8:01           ` Tian, Kevin
2023-07-14  2:49             ` Baolu Lu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox