Files
linux/include/linux
Linus Torvalds 48552153cf Merge tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd
Pull iommufd updates from Jason Gunthorpe:
 "Two significant new items:

   - Allow reporting IOMMU HW events to userspace when the events are
     clearly linked to a device.

     This is linked to the VIOMMU object and is intended to be used by a
     VMM to forward HW events to the virtual machine as part of
     emulating a vIOMMU. ARM SMMUv3 is the first driver to use this
     mechanism. Like the existing fault events the data is delivered
     through a simple FD returning event records on read().

   - PASID support in VFIO.

     The "Process Address Space ID" is a PCI feature that allows the
     device to tag all PCI DMA operations with an ID. The IOMMU will
     then use the ID to select a unique translation for those DMAs. This
     is part of Intel's vIOMMU support as VT-D HW requires the
     hypervisor to manage each PASID entry.

     The support is generic so any VFIO user could attach any
     translation to a PASID, and the support should work on ARM SMMUv3
     as well. AMD requires additional driver work.

  Some minor updates, along with fixes:

   - Prevent using nested parents with fault's, no driver support today

   - Put a single "cookie_type" value in the iommu_domain to indicate
     what owns the various opaque owner fields"

* tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd: (49 commits)
  iommufd: Test attach before detaching pasid
  iommufd: Fix iommu_vevent_header tables markup
  iommu: Convert unreachable() to BUG()
  iommufd: Balance veventq->num_events inc/dec
  iommufd: Initialize the flags of vevent in iommufd_viommu_report_event()
  iommufd/selftest: Add coverage for reporting max_pasid_log2 via IOMMU_HW_INFO
  iommufd: Extend IOMMU_GET_HW_INFO to report PASID capability
  vfio: VFIO_DEVICE_[AT|DE]TACH_IOMMUFD_PT support pasid
  vfio-iommufd: Support pasid [at|de]tach for physical VFIO devices
  ida: Add ida_find_first_range()
  iommufd/selftest: Add coverage for iommufd pasid attach/detach
  iommufd/selftest: Add test ops to test pasid attach/detach
  iommufd/selftest: Add a helper to get test device
  iommufd/selftest: Add set_dev_pasid in mock iommu
  iommufd: Allow allocating PASID-compatible domain
  iommu/vt-d: Add IOMMU_HWPT_ALLOC_PASID support
  iommufd: Enforce PASID-compatible domain for RID
  iommufd: Support pasid attach/replace
  iommufd: Enforce PASID-compatible domain in PASID path
  iommufd/device: Add pasid_attach array to track per-PASID attach
  ...
2025-04-01 18:03:46 -07:00
..
2025-03-06 09:25:06 +01:00
2025-03-21 20:57:55 -03:00
2025-03-13 14:15:54 +00:00
2025-02-21 16:45:21 -08:00
2025-02-18 11:08:36 +01:00
2025-02-21 17:31:45 -06:00
2025-02-21 09:54:01 +01:00
2025-03-08 14:37:39 +01:00
2025-02-26 12:10:48 +01:00
2025-03-20 17:33:31 -04:00
2025-03-17 22:06:41 -07:00
2025-02-24 12:08:51 +02:00
2025-03-20 09:45:39 +01:00
2025-03-20 15:16:03 +01:00
2025-03-10 13:13:04 -07:00
2025-03-22 15:36:49 +02:00
2025-03-08 12:13:25 +01:00
2025-02-20 15:24:13 +01:00
2025-03-17 13:54:50 +00:00
2025-02-25 15:07:24 -05:00
2025-02-18 11:51:22 -05:00
2025-03-06 15:13:13 -04:00
2025-03-27 13:14:46 -05:00
2025-03-08 15:08:45 -06:00
2025-03-27 13:14:45 -05:00
2025-03-10 08:53:40 +01:00
2025-03-12 20:41:14 +01:00
2025-03-16 17:40:22 -07:00
2025-02-28 11:51:26 -08:00
2025-02-28 11:51:26 -08:00
2025-03-25 09:15:07 -07:00
2025-02-28 11:51:26 -08:00
2025-03-13 13:25:58 -07:00
2025-03-13 13:25:58 -07:00
2025-03-13 13:25:58 -07:00