linux/drivers/iommu
Linus Torvalds 2f43193b88 dma-mapping updates for Linux 7.3:
- swiotlb: added new configuration option for the default pool size
 (Jagadeesh Pagadala) and reduced overhead for high watermark tracking
 (chenhuguanshen)
 
 - minor code cleanups and improvements (Vova Sharaienko, Honglei Huang
 and Marek Szyprowski)
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQSrngzkoBtlA8uaaJ+Jp1EFxbsSRAUCaoxGQgAKCRCJp1EFxbsS
 RFPEAP0eo9usjFcvh0YKTPh6/mXgqxRuTNQZ7i+2lRGEczKcJQEA7mwkgwpiOaKn
 f++mMVOmsPvl2Y7r/5XqBWywwhyygA0=
 =X8pY
 -----END PGP SIGNATURE-----
mergetag object 04a19b35dc
 type commit
 tag dma-mapping-7.3-2026-08-24-2
 tagger Marek Szyprowski <m.szyprowski@samsung.com> 1787582472 +0200
 
 second dma-mapping update for Linux 7.3:
 
 - important dma-mapping update for confidential-computing, which adds
 proper tracking of the shared DMA state through direct, pool and swiotlb
 paths (Aneesh Kumar K.V)
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQSrngzkoBtlA8uaaJ+Jp1EFxbsSRAUCaoxYzgAKCRCJp1EFxbsS
 RM9bAP4mJuHHzj2DqsKV7QX19uhyzmsHIg+ecjBNRaOdUAgelQD9FsaG/fwrZnRT
 y89H0QUErqLsdmkDqV0zsXfaGzWY4gk=
 =dKjS
 -----END PGP SIGNATURE-----

Merge tags 'dma-mapping-7.3-2026-08-24' and 'dma-mapping-7.3-2026-08-24-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux

Pull dma-mapping updates from Marek Szyprowski:

 - swiotlb:
     - new configuration option for the default pool size
       (Jagadeesh Pagadala)
     - reduce overhead for high watermark tracking (chenhuguanshen)

 - minor code cleanups and improvements (Vova Sharaienko, Honglei Huang
   and Marek Szyprowski)

 - add proper tracking of the shared DMA state through direct, pool and
   swiotlb paths (Aneesh Kumar K.V)

   This is important for confidential-computing

* tag 'dma-mapping-7.3-2026-08-24' of git://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux:
  dma/swiotlb: decouple high watermark tracking from CONFIG_DEBUG_FS
  MAINTAINERS: update tree for DMA MAPPING HELPERS
  dma/swiotlb: introduce Kconfig option for compile-time default pool size
  dma-direct: Improve readability of the dma_direct_map_sg() for P2PDMA case
  iommu/dma: simplify dma_iova_destroy() and drop the free_iova helper
  dma-coherent: use KiB in DMA allocation logs
  dma-coherent: fix spacing coding style issue

* tag 'dma-mapping-7.3-2026-08-24-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mszyprowski/linux: (23 commits)
  swiotlb: remove unused SWIOTLB_FORCE flag
  dma: swiotlb: handle set_memory_decrypted() failures
  dma: swiotlb: free dynamic pools from process context
  dma-direct: rename ret to cpu_addr in alloc helpers
  dma-direct: select DMA address encoding from __DMA_ATTR_ALLOC_CC_SHARED
  dma-direct: set decrypted flag for remapped DMA allocations
  dma-direct: make dma_direct_map_phys() honor DMA_ATTR_CC_SHARED
  dma-direct: Move dma_direct_map_phys() to dma/direct.c
  dma-direct: pass attrs to dma_capable() for DMA_ATTR_CC_SHARED checks
  dma-mapping: make dma_pgprot() honor __DMA_ATTR_ALLOC_CC_SHARED
  dma: swiotlb: track pool encryption state and honor DMA_ATTR_CC_SHARED
  dma: swiotlb: pass mapping attributes by reference
  dma-pool: track decrypted atomic pools and select them via attrs
  dma-direct: use __DMA_ATTR_ALLOC_CC_SHARED in alloc/free paths
  dma-mapping: Add internal shared allocation attribute
  coco: arm64: s390: powerpc: Mark secure guests with CC_ATTR_GUEST_MEM_ENCRYPT
  dma-direct: swiotlb: handle swiotlb alloc/free outside __dma_direct_alloc_pages
  s390: Expose protected virtualization through cc_platform_has()
  swiotlb: Preserve allocation virtual address for dynamic pools
  dma: free atomic pool pages by physical address
  ...
2026-08-24 11:35:46 -07:00
..
amd Merge branches 'arm/smmu/updates', 'arm/smmu/bindings', 'mediatek', 'qualcomm/msm', 'rockchip', 'ti/omap', 'riscv', 'intel/vt-d', 'amd/amd-vi', 'core' and 'typos' into next 2026-08-11 09:12:19 +02:00
arm IOMMU updates for Linux v7.3: 2026-08-19 12:38:26 -07:00
generic_pt iommupt: Return zero for invalid iova_to_phys() ranges 2026-08-10 09:51:52 +02:00
hyperv iommu/hyperv: Create hyperv subdirectory under drivers/iommu 2026-06-07 22:55:56 -07:00
intel Merge branches 'arm/smmu/updates', 'arm/smmu/bindings', 'mediatek', 'qualcomm/msm', 'rockchip', 'ti/omap', 'riscv', 'intel/vt-d', 'amd/amd-vi', 'core' and 'typos' into next 2026-08-11 09:12:19 +02:00
iommufd iommufd v7.3 merge window pull request 2026-08-19 12:42:58 -07:00
riscv iommu/riscv: Drop superfluous zeros in pci_device_id array 2026-07-09 10:09:39 +02:00
apple-dart.c iommu/apple-dart: correct CONFIG_PCIE_APPLE macro name in comment 2026-06-11 15:42:23 +02:00
dma-iommu.c dma-mapping updates for Linux 7.3: 2026-08-24 11:35:46 -07:00
dma-iommu.h iommu: Tidy domain for iommu_setup_dma_ops() 2026-01-10 10:26:43 +01:00
exynos-iommu.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
fsl_pamu_domain.c iommu: Pass in old domain to attach_dev callback functions 2025-10-27 13:55:35 +01:00
fsl_pamu_domain.h iommu/fsl_pamu: remove the snoop_id field 2021-04-07 10:56:52 +02:00
fsl_pamu.c iommu/fsl: use platform_device_set_of_node() 2026-07-10 16:07:09 +02:00
fsl_pamu.h iommu/fsl_pamu: hardcode the window address and size in pamu_config_ppaace 2021-04-07 10:56:52 +02:00
io-pgfault.c iommu/iommufd: Fix IOPF group ownership UAF 2026-07-26 13:16:21 -03:00
io-pgtable-arm-selftests.c iommu/io-pgtable-arm-selftests: Use KUnit 2025-11-13 16:25:32 +01:00
io-pgtable-arm-v7s.c iommu, debugobjects: avoid gcc-16.1 section mismatch warnings 2026-05-28 09:07:12 +02:00
io-pgtable-arm.c iommu/io-pgtable-arm: Use address conversion consistently 2026-05-19 11:03:45 +02:00
io-pgtable-arm.h
io-pgtable-dart.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
io-pgtable.c iommu/amd: Remove AMD io_pgtable support 2025-11-05 09:08:57 +01:00
iommu-debug-pagealloc.c iommu: debug-pagealloc: Use page_ext_get_from_phys() 2026-01-21 12:51:49 +01:00
iommu-debugfs.c
iommu-pages.c iommu/pages: Add support for incoherent IOMMU page table walkers 2025-11-05 09:47:43 +01:00
iommu-pages.h iommu/pages: Fix iommu_pages_flush_incoherent() for non-x86 2026-04-27 13:59:36 +02:00
iommu-priv.h iommu: Add calls for IOMMU_DEBUG_PAGEALLOC 2026-01-10 10:52:26 +01:00
iommu-sva.c iommu/sva: Set handle->dev before the SVA handle is visible 2026-08-10 09:51:51 +02:00
iommu-sysfs.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
iommu-traces.c iommu: Remove detach_dev callback 2023-01-13 16:39:18 +01:00
iommu.c iommufd v7.3 merge window pull request 2026-08-19 12:42:58 -07:00
iova.c Merge branches 'arm/smmu/updates', 'arm/smmu/bindings', 'mediatek', 'qualcomm/msm', 'rockchip', 'ti/omap', 'riscv', 'intel/vt-d', 'amd/amd-vi', 'core' and 'typos' into next 2026-08-11 09:12:19 +02:00
ipmmu-vmsa.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
irq_remapping.c iommu/hyperv: Create hyperv subdirectory under drivers/iommu 2026-06-07 22:55:56 -07:00
irq_remapping.h iommu/vt-d: Allocate DMAR fault interrupts locally 2024-04-26 11:57:36 +02:00
Kconfig hyperv-next for v7.2-rc1 2026-06-22 08:06:13 -07:00
Makefile hyperv-next for v7.2-rc1 2026-06-22 08:06:13 -07:00
msm_iommu_hw-8xxx.h
msm_iommu.c iommu/msm: Unwind probe state on registration failure 2026-07-24 13:05:53 +00:00
msm_iommu.h
mtk_iommu_v1.c iommu/mediatek-v1: Fix off-by-one in MT2701_LARB_NR_MAX 2026-07-09 10:13:26 +02:00
mtk_iommu.c iommu/mtk: Fix spelling of correspondence in comment 2026-07-22 12:28:59 +00:00
of_iommu.c of: Factor arguments passed to of_map_id() into a struct 2026-06-12 10:25:39 -05:00
omap-iommu-debug.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
omap-iommu.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
omap-iommu.h iommu/omap: fix device leaks on probe_device() 2025-11-17 09:49:44 +01:00
omap-iopgtable.h
rockchip-iommu.c iommu/rockchip: Clear stale page faults before enabling stall 2026-07-26 13:10:27 +00:00
s390-iommu.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
sprd-iommu.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
sun50i-iommu.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
tegra-smmu.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
virtio-iommu.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
vsi-iommu.c iommu/vsi: Use list_for_each_entry() 2026-05-28 09:30:34 +02:00